🌿Spring Boot
Spring Boot는 기존의 Spring 설정을 단순화시켜서초기 진입 장벽을 낮춘 프로젝트이다.
Spring Boot 개발 환경 자체에 독립 실행이 가능한 아파치 톰캣을 내장하고 있다. 그래서 나중에 배포를 할 때 환경에 구애받지 않고, 독립 실행이 가능한 웹 애플리케이션 제작이 가능하다.
https://start.spring.io Spring Initializr라는 공식 사이트를 이용한다는 특징이 있다.
Spring Boot 프로젝트 생성 방법
- Maven(Gradle)을 사용해서 직접 생성하는 방법
- STS를 사용해서 생성하는 방법
- Spring Initializr 웹 사이트를 사용해서 생성하는 방법
내장된 톰캣의 포트번호 변경
application.properties
# 내장 톰캣의 포트 번호
server.port=8090
저장을 하면 UTF-8로 변경하겠다는 메시지가 뜨는데, Save as UTF-8을 클릭하면 된다.
파일 추가
기본적으로 MVC를 지원하는 환경이므로 Controller를 만들어서 확인을 할 수 있다.
JSP를 사용하려면 따로 설정이 필요하므로 Restfull을 사용하도록 한다.
com.test.start.controller
- TestController.java
src/main/resources/static > 정적 페이지 저장 폴더
- test.html > http://localhost:8090/test.html
스프링 부트 애플리케이션 실행 방법
- Ctrl + F11 > 비권장
- Run as
- Boot Dashboard
Run as
Boot Dashboard
Spring Boot는 실행될 때 Spring 로고와 로그가 뜬다.
TestController.java
- http://localhost:8090/test
package com.test.start.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@GetMapping(value="/test")
public String test() {
return "스프링 부트 애플리케이션입니다.";
}
}
curl -X GET localhost:8090/test
cmd 환경에서 출력되는 걸 확인할 수 있다.
test.html
- http://localhost:8090/test.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>Spring Boot</h1>
<p>정적 페이지입니다.</p>
</body>
</html>
Web Developer 설치
아래에 있는 Eclipse Enterprise Java and Web Developer Tools 3.31 설치를 진행한다.
설치를 마친 뒤에는 STS를 재시작한다.
encoding
이제 Web 관련 파일을 생성할 때 기본적인 템플릿을 제공한다.
추가로 플러그인을 설치하면 인코딩이 EUC-KR로 설정되어 있으므로, UTF-8로 인코딩 설정부터 하도록 한다.
🌿Spring Boot + Maven Build + 배포(실행)
웹 사이트를 AWS에 배포하는 작업을 해보도록 하자.
mvnm 설치
- C:\Users\zhzkd\Documents\workspace-spring-tool-suite-4-4.21.0.RELEASE\start
mvnm install
mvnm을 설치하면 target이라는 폴더가 만들어진다.
jar 파일 압축 해제
java -jar start-0.0.1-SNAPSHOT.jar
- http://localhost:8090/test
톰캣이 내장되어 있기 때문에 이클립스가 켜져 있지 않더라도 주소로 들어가는 게 가능하다.
JRE만 깔려 있다면 이 프로젝트는 어떤 컴퓨터에서든 바로 실행할 수 있다. jar 파일 하나만 있는 것 만으로 Spring Boot가 단독 실행이 가능하다.
MobaXterm
start-0.0.1-SNAPSHOT.jar 파일을 홈 디렉터리에 복사했다.
이 jar 파일을 실행하고, port 번호를 입력하여 들어가면 간단하게 배포와 실행이 완료된 것이다.
🌿Spring Initializr에서 프로젝트 생성
Spring Initializr를 이용하여 프로젝트를 생성해 보도록 하자.
Hello 프로젝트 생성
GENERATE를 하면 프로젝트의 이름으로 압축 파일이 생성된다.
현재 프로젝트가 생성되긴 했지만, 완벽한 상태는 아니다.
이 폴더를 STS 폴더로 이동한다.
Import: Existing Maven Projects
Maven으로 Import를 하면 완전한 프로젝트가 생성이 된다.