더북(TheBook)

2.3 자동 구성 사용하기

 

간단하게 설명하면 스프링 부트 자동 구성(Auto-configuration)은 스프링 구성을 적용해야 할지 말지를 결정하는 요인들을 판단하는 런타임(더 정확하게는 애플리케이션이 시작되는 시점) 과정이라고 할 수 있다. 스프링 부트의 자동 구성 대상으로 고려할 만한 예를 살펴보자.

클래스패스에 JdbcTemplate이 있고 DataSource 빈이 있다면 JdbcTemplate 빈을 자동 구성한다.

클래스패스에 Thymeleaf가 있다면 Thymeleaf 템플릿 리졸버, 뷰 리졸버, 템플릿 엔진을 구성한다.

클래스패스에 스프링 시큐리티가 있다면 아주 기본적인 웹 보안을 구성한다.

 

애플리케이션이 시작될 때마다 스프링 부트는 보안, 통합, 데이터 저장, 웹 개발 영역 등을 커버하려고 자동 구성에서 대략 200가지 정도 결정을 내린다. 이 자동 구성 덕분에 필요한 상황이 아니면 명시적으로 구성을 작성하지 않아도 된다.

자동 구성과 관계된 재미있는 사실은 책에서 자동 구성을 보여 주고 설명하기가 매우 어렵다는 것이다. 작성할 구성이 없다면 짚어서 설명할 것도 없기 때문이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.