본문 바로가기
Develop/Spring˙Spring Boot

[Spring Boot] 스프링 부트 애플리케이션 개발하기

by 독서왕뼝아리 2023. 1. 26.

스프링 부트 사용하기

@SpringBootApplication 애너테이션은 스프링 컴포넌트 검색과 스프링 부트 자동 구성을 활성화한다. 아래 세 가지 구성을 묶은 애너테이션이다.

- @Configuration: 애너테이션이 붙은 클래스를 스프링의 자바 기반 구성 클래스로 지정한다.

- @ComponentScan: 컴포넌트 검색 기능을 활성화해서 웹 컨트롤러 클래스나 다른 컴포넌트 클래스들을 자동으로 검색하여 스프링 애플리케이션 컨텍스트에 빈으로 등록시킨다.

- @EnableAutoConfiguration: 이 구성 한 줄로 스프링의 수맣은 구성 코드를 대체할 수 있다.

 

 

스타터 의존성 사용하기

빌드 플러그인의 주 기능: 프로젝트를 실행 가능한 우버 JAR로 패키징하는 것이다. 우버 JAR패키징 작업으로 애플리케이션 의존성을 모두 JAR에 패키징하고, 'java -jar' 명령으로 애플리케이션을 실행할 수 있게 하는 엔트리를 담은 매니페스트를 추가한다.

 

 

자동 구성 사용하기

- 도메인 정의: @Entity 애너테이션을 붙여 클래스를 JPA 엔티티로 지정한다. @Id, @GeneratedValue 애너테이션을 붙여 엔티티의 유일성을 식별한다.

- 리포지토리 인터페이스 선언: JPA의 JpaRepository 인터페이스를 상속하여 객체를 영속화할 수 있는 리포지토리를 선언한다.

- 웹 인터페이스 만들기: @Controller, @RestController로 스프링 MVC 컨트롤러로 애플리케이션의 HTTP 요청을 처리한다.

 

 

실행 후 무슨 일이 일어났을까?

스프링 4.0 부터 조건부 구성(Conditional Configuration) 지원을 사용하기 때문에 조건부 구성 기능을 이용할 수 있다. Condition 인터페이스를 상속 받고 matches() 메서드를 오버라이드 하면 된다.

 

 

요약

스프링 부트 스타터 의존성과 자동 구성을 이용하면 스프링 애플리케이션을 더 바르고 쉽게 개발할 수 있다. 스타터 의존성은 특정 라이브러리나 버전보다는 애플리케이션에 필요한 기능 유형에 집중할 수 있게 한다. 자동 구성을 이용하면 스프링 부트를 사용하지 않은 스프링 애플리케이션에서 흔히 했던 보일러플레이트 구성을 직접 하지 않아도 된다.

 

 

길벗 깃허브 : https://github.com/gilbutITbook/006859/tree/master/ch02/readinglist