스프링 개발 환경 구축 01 개발을 위한 준비 1.5 Java Configuration을 하는 경우
백엔드/Spring 책 핵심정리2021. 7. 8. 19:00
Spring Legacy Project 생성 후,
1) web.xml(tomcat)의 파일 삭제 및 스프링 관련 파일(servlet-context.xml(웹관련스프링설정파일), root-context.xml(스프링설정파일)) 삭제
▶ 스프링 관련 파일삭제는 스프링 폴더 자체를 삭제시켜야한다.
2) pom.xml의 수정 및 스프링 버전 변경
▶ web.xml을 삭제하면 pom.xml에서 에러가 발생하는데, 기본세팅이 web.xml로 되어있어서 pom.xml의 하단부에 내 아래설정을 추가해준다.
//pom.xml의 일부
<plugin>
<grouId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
...
//스프링 버전 변경
<properties>
<java-version>1.8</java-version>
<org.springframework-version>5.0.7.RELEASE</org.springframework-version>
...
// 컴파일 관련 버전 역시 1.8로 수정
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-Xlint:a
수정 후, Maven > Update Project 실행
3) java 설정(Java Configuration) 관련 패키지 생성 후 → @Configuration
java 설정(Java Configuration) 을 이용하는 경우 XML 대신 설정파일을 직접 작성해야하는데, @Configuration 이라는 어노테이션을 이용해서 해당 클래스의 인스턴스를 이용해서 설정파일을 대신한다.
▶프로젝트내 org.zerock.config 라는 폴더 생성하고 RootConfig 클래스를 작성 (root-context.xml을 대신한다)
pacakage org.zerock.config;
import org.springframework.context.annotation.Configuration;
@Configuration
public class RootConfig{
}
▶스프링 구동하는 web.xml 을 대신하는 클래스 작성
package org.zerock.config;
import org.springframework.web.servlet.support.
AbstractAnnotationConfigDispatcherServletIntitializer;
public class WebConfig extends
AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses(){ //root-context.xml을 대신하는 클래스를 지정
return new Class[] {RootConfig.class}; // 변경하였다.
}
@Override
protected Class<?>[] getServletConfigClasses(){
return null;
}
@Override
protected String[] getServletMappings() {
return null;
}
}
'백엔드 > Spring 책 핵심정리' 카테고리의 다른 글
스프링 개발 환경 구축 02 스프링의 특징과 의존성 주입 2.2 의존성 주입 테스트 (0) | 2021.07.13 |
---|---|
스프링 개발 환경 구축 02 스프링의 특징과 의존성 주입 2.1 스프링 프레임워크의 간략한 역사 (0) | 2021.07.13 |
스프링 개발 환경 구축 01 개발을 위한 준비 1.4 Lombok 라이브러리 설치 (0) | 2021.07.08 |
스프링 개발 환경 구축 01 개발을 위한 준비 1.3 Tomcat을 이용한 프로젝트 실행 확인 (0) | 2021.07.08 |
스프링 개발 환경 구축 01 개발을 위한 준비 1.2 스프링 프로젝트 생성 (0) | 2021.07.08 |
댓글()