Eclipse(STS)를 통해 생성하는 'Spring Legacy Project'의 경우 XML을 기반으로 스프링 관련 설정을 하도록 되어 있다.
스프링 버전 3 이후에는 Java 클래스 파일을 이용하는 설정을 지원하는데,
최근 Java를 이용한 설정이 점점 증가하고 있다.
그럼, 지금부터 Java로 스프링을 설정하는 방법에 대해서 알아보자
먼저 New - Spring Legacy Project로 스프링 프로젝트를 하나 생성한다.
프로젝트는 Spring MVC Project를 이용해 생성한다.
원하는 프로젝트 명을 입력한 뒤, Next를 클릭하고 패키지 명도 입력해준다.
finish를 누르면 프로젝트 생성 완료
프로젝트가 생성된 후에는 다음과 같은 작업을 진행한다.
1. web.xml의 파일 삭제 및 스프링 관련 파일 삭제
2. pom.xml의 수정 및 스프링 버전 변경
3. Java 설정 관련 패키지 생성
여기서는 xml 파일이 아닌 java 클래스로 스프링 설정을 할 것이기 때문에,
위 사진 속 spring 폴더 안에 root-context.xml과 appServlet - servlet-context.xml을 지워야 하므로
spring 폴더 자체를 삭제한다. web.xml도 삭제해준다.
web.xml을 삭제하면 pom.xml에서 에러가 발생하는데, 이것은 과거의 웹 프로젝트를 web.xml을 사용하는 것을
기본으로 설정했기 때문이다.
이것을 해결하기 위해 <plugins> 내에 아래의 설정을 추가해준다.
스프링 버전도 같이 변경한다.
컴파일 버전도 1.8로 변경해주고 Maven - Update Project를 실행한다.
여기까지 끝냈다면 초기 설정은 완성이 된 것이다.
java 설정을 이용하는 경우에는 XML을 java 클래스 파일로 대체해서 작성할 필요가 있다.
스프링은 @Configuration이라는 어노테이션을 이용해서 해당 클래스의 인스턴스를 이용해 설정 파일을 대신한다.
프로젝트 내에 'xxx.xxx.config'라는 폴더를 생성하고 RootConfig라는 클래스를 만든다.
이 클래스는 'root-context.xml'의 역할을 대체할 클래스라고 보면 된다.
그리고 web.xml을 대신할 클래스를 만들어야 하는데, 같은 패키지 내에 WebConfig 클래스를 만든다.
이 클래스는 AbstractAnnotationAbstractAnnotationConfigDispatcherServletInitializer라는
이름의 추상 클래스를 상속하도록 작성한다.
작성된 WebConfig 클래스는 세 개의 추상 메소드를 오버라이드 하도록 작성된다.
이때 생성된 getRootConfig() 클래스는 'root-context.xml'을 대신하는 클래스를 지정한다.
작성된 프로젝트를 Tomcat을 통해 실행하면 간단하게 스프링 관련된 로그가 기록되는 것을 확인할 수 있다.
'Study > Spring' 카테고리의 다른 글
[Spring] MyBatis와 스프링 연동하기 (1) | 2020.07.07 |
---|---|
[Spring] 스프링과 mysql 연동하기 (1) | 2020.07.05 |
[Spring] 스프링 어노테이션 기능 정리 (1) | 2020.07.04 |
[Spring] Lombok 라이브러리 설치 방법 정리 (1) | 2020.07.03 |
[Spring] 스프링 프로젝트 초기 설정하기 (5) | 2020.07.02 |