Helmi

스프링 설명 조금 + 설정 시 Java Configuration 하는 경우 본문

Spring

스프링 설명 조금 + 설정 시 Java Configuration 하는 경우

Helmi 2023. 4. 11. 23:18

스프링 관련 설명

생성된 프로젝트는 이 같은 구조로 Java 폴더나 JSP 폴더, 테스트 폴더 등이 생성 됨


Java Configuration 하는 경우

Eclipse(STS) 통해 생성하는 Spring Legacy Project 경우 XML 기반으로 스프링 관련 설정 하도록 되어 있음.

스프링 3버전 이후 Java 클래스 파일을 이용하는 설정 지원하는데, XML과 별개로 Java를 이용하는 설정 (Java Configuration, 이하 Java 설정)이 증가하는 추세.

 

기존과 동일하게 Spring Legacy Project 설정.

 

프로젝트 생성 후 할 일

- web.xml 파일 삭제 및 스프링 관련 파일 삭제

- pom.xml 수정 및 스프링 버전 변경

- java설정 관련 패키지 설정

 

 

XML 사용하지 않는 경우

@Configuration : 해당 클래스의 인스턴스를 이용해 설정 파일을 대신 함. (XML 대신 설정 파일 직접 작성)

 

web.xml 대신하는 클래스 작성

org.zerock.config.WebConfig.java (AbstractAnnotationCongifDispatcherServletInitializer 추상 클래스 상속)

package org.zerock.config;

import org.springframework.web.servlet.support.
AbstractAnnotationConfigDispatcherServletInitializer;

public class WebConfig extends
AbstractAnnotationConfigDispatcherServletInitializer {

@Override
protected Class<?>[] getRootConfigClasses(){
return null;
}

@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}

@Override
protected String[] getServletMappings() {
return null;
} 
}

3개의 추상 메서드 오버라이드. 이때 생성된 getRootConfig() 클래스는 'root-context.xml' 대신하는 클래스를 지정.

예제는 RootConfig 클래스 사용하므로 메서드 내용 변경해주기

@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[] {RootConfig.class};
}

'Spring' 카테고리의 다른 글

커넥션 풀 설정  (0) 2023.04.12
스프링 특징, 의존성 주입  (0) 2023.04.12
구) 스프링 + Mybatis 실전  (0) 2023.04.07
구) 스프링 + MyBatis 소개  (0) 2023.04.06
구) 기초적인 컨트롤러 생성 실습 (WAS)  (0) 2023.04.06