pom.xml 수정 사항

스프링 버전 수정

lombok 과 테스트코드 실행을위한 spring test 추가

servlet 버전 3.1.0 이상으로 수정

maven 컴파일 옵션은 1.8버전으로 변경하고 프로젝트 Maven 메뉴에서 updateProject 를 실행

server 에서 모듈탭 해당 프로젝트를 추가한뒤
Edit webmodule 에서 path를 ‘/’ 로지정 후
project run -> server 로 hello world가 뜨는지 확인.

Spring-MVC의 경우 servlet-context.xml에 대신하는 별도의 ServletConfig 클래스를 작성합니다
Servlet config 클래스는 기존의 Servlet-config.xml 에 설정된 모든 내용을 담아야하는데 다음과 같은 방식을 이용한다.
@EnableWebMVC 어노테이션과 @WebMvcConfigurer 인터페이스를 구현하는 방식을 사용 (WebMVCconfigurerAdapter 추상클래스를 사용했으나 스프링 5.0버전부터는 Deprecated되었다)
@Configuration과 WebMvcConfigurationSupport 클래스를 상속하는 방식 - 일반 @Configuration 우선 순위가 구분되지 않는 경우에 사용
ServletConfig 클래스

WebMvcConfigurer는 스프링 MVC와 관련된 설정을 메서드로 오버라이드 하는 형태를 이용할때 사용합니다. ServletConfig 클래스 역시 @ComponentScan을 이용해서 다른 패키지에 작성된 스프링의 객체(bean)를 인식할 수 있습니다.

ServeltConfig 클래스를 정상적으로 실행하려면 WebConfig의 설정은 아래와 같이 ServletCofig를 이용하고, 스프링 MVC의 기본경로도 ‘/’로 변경함
예제 프로젝트의 로딩 구조
먼저 root-context.xml에 정의 된 객체(bean)들은 스프링영역안에 생성되고 객체의 의존성 처리가 처리됨
그후에 MVC에서 사용되는 DispatcherServlet 이라는 서블릿과 관련된 설정이 동작. 내부 웹관련 처리의 준비작업을 할때 사용하는 파일이servlet-context.xml