Spring MVC 설정 마무리

Spring Web MVC

백기선님의 강의인 Spring Web MVC 강의를 듣고 공부한 내용을 정리한 글

Spring MVC 설정 마무리

Spring MVC 설정을 위해 배웠던 내용들을 복습해보자.

가장 처음 배운 방법은 Dispatcher Servlet이 사용하는 모든 빈을 직접 등록하는 방법이었다.

이 방법의 문제점은 Dispatcher Servlet에서 관리하는 여러 빈들을 설정하는 것이 어렵고 번거롭다는 점이다.

그래서 Spring MVC에서는 애노테이션 기반의 편리한 Spring MVC 기본 설정을 제공해주고 있다.

@EnableWebMVC가 그 주인공이다.

@EnableWebMVC 애노테이션을 가진 ClassWebMvcConfigurer를 구현하면 빈을 등록하지않고도 손쉽게 Dispatcher Servlet의 빈을 커스터마이징할 수 있다.

심지어 스프링 부트를 쓰면 자동 설정으로 다양한 기능들을 별도의 설정없이 사용할 수 있다!

물론 스프링 부트에서도 @EnableWebMVCWebMvcConfigurer 인터페이스를 구현하여 빈 설정을 커스터마이징할 수 있지만, 기존의 스프링이 제공하던 자동 설정들을 사용할 수 없게 된다.

WebMvcConfigurer를 구현하고 @EnableWebMVC를 사용하지 않으면 기존의 스프링 부트 설정을 그대로 사용하면서 추가로 커스터마이징이 가능하기는 하다.

그런데 application.properties에 Spring MVC를 커스터마이징할 수 있는 기능을 제공하고 있기 때문에 이것을 먼저 고려해보고, 이것으로 구현이 힘든 경우라면 WebMvcConfigurer를 사용하도록 하자.

만약 WebMvcConfigurer로도 구현이 힘든 경우라면 어쩔 수없이 @Bean으로 등록할 수 있기는 하다. (스프링 부트에서 그렇게 하드하게 설정을 커스터마이징하는 경우는 잘 없기는 하다.)

Reference

인프런 백기선님의 스프링 Web MVC



© 2022. by minkuk

Powered by minkuk