Spring Boot 기초
1. Spring Boot?
- 스프링 프레임워크를 사용하는 프로젝트를 쉽게 설정할 수 있도록 해주는 서브 프로젝트
2. Spring Boot의 특징
- 단독으로 스프링 애플리케이션을 생성
- Tomcat, Jetty, Undertow 를 내장
- 빌드 구성을 단순화하기 위해 'starter' 종속성 제공
- 스프링과 3th party 라이브러리를 가능한 자동적으로 설정
- 상용화에 필요한 metrics, health checks, externalized configuration 같은 기능 제공
- XML 설정을 생성하지 않고 요구하지 않음
Spring Boot 시작하기
1. Spring Initializr 로 Spring Boot 프로젝트 생성
1.1. Generator
- Spring Initializr 사이트 접속 ( https://start.spring.io/ )
( 2021년 1월 설정 화면 ) |
- Project, Language, Spring Boot, Metadata등을 설정함
- Generate를 클릭함( 프로젝트 파일이 압축되어 다운로드됨 )
1.2. 프로젝트 Import
- 압축 해제 후 Eclipse나 IntelliJ를 통해 프로젝트를 Import (여기서는 IntelliJ를 사용)
2. Gradle 설정
2.1. spring-boot-starter-web
- Spring MVC나 RESTful 같은 Web과 관련된 의존성들
2.2. spring-boot-starter-test
- Junit, Hamcrest, Mockito를 포함하는 테스트관련 의존성들
plugins { // 스프링부트 의존성 관리 및 애플리케이션 패키징을 위한 Gradle 플러그인 id "org.springframework.boot" version "2.4.1" // 스프링부트 버전에 대해 의존성을 자동으로 가져옴 id "io.spring.dependency-management" version "1.0.10.RELEASE" id "java" } group = "com.chakans" version = "0.0.1-SNAPSHOT" // 자바 버전 선언 sourceCompatibility = "11" repositories { mavenCentral() } // 프로젝트와 의존 관계에 있는 라이브러리 정의 dependencies { implementation "org.springframework.boot:spring-boot-starter" implementation "org.springframework.boot:spring-boot-starter-web" testImplementation ("org.springframework.boot:spring-boot-starter-test") { exclude group: "org.junit.vintage", module: "junit-vintage-engine" } } test { useJUnitPlatform() }
3. Application.java
3.1. @SpringBootApplication
- @EnableAutoConfiguration, @ComponentScan, @Configuration을 하나로 묶은 것이라 볼 수 있음
- 해당 어노테이션이 있는 package위치를 기준으로 ComponentScan을 수행함 ( 기준 package 위치 변경 가능 )
- main 메소드 위치하는 곳임
4. index.html
- resources > static 하위에 index.html 파일 생성
- 서버 구동 후 http://localhost:8080/index.html로 확인 가능함
5. 서버 구동
댓글 없음:
댓글 쓰기
참고: 블로그의 회원만 댓글을 작성할 수 있습니다.