XML Configuration → Java Configuration
지시서 작성방식을 XML Configuration에서 Java Configuration으로 변경하는 법
<Configuration.xml>
<?xml version="1.0" encodoing="UTF-8">
<beans xmlns="http://www.springframework.org/schema/beans" ..>
<context:component-scan base-package="spring.di.ui" />
<bean id = "exam" class = "spring.di.entity.NewlecExam" />
</beans>
<NewlecDIConfig.java>
: 위의 xml파일과 동일한 기능을 하는 java configuration 파일
@ComponentScan("spring.di.ui")
@Configuration
public class NewlecAppConfig {
@Bean
public Exam exam() {
return new NewlecExam();
}
}
※ 세부 설명
@ComponentScan("spring.di.ui")
//@ComponentScan({"spring.di.ui, spring.di.entity"}) 여러개 쓰려면 { } 필요
//<context:component-scan base-package="spring.di.ui" />
@Configuration
//다른 자바 파일과 다르게 설정 파일임을 명시해야 함!
public class NewlecAppConfig {
@Bean //컨테이너에 담아주는 역할
public Exam exam() {//exam()의 exam은 bean의 id 역할
return new NewlecExam();
}
//NewlecExam의 객체 exam을 정의한 것과 같은 역할
}
물론, 원래 이렇게 불러 왔던 구문을
ApplicationContext context = new ClassPathXmlApplicationContext("spring/di/setting.xml");
아래와 같이 변경해야할 것이다.
ApplicationContext context = new AnnotationConfigApplicationContext(NewlecDIConfig.class);
만약, 여러 개의 Config파일을 등록해야한다거나 할 때는 .register() 메소드를 사용하면 된다.
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
//ctx.register(AppConfig.class, OtherConfig.class);
ctx.register(NewlecAppConfig.calss);
ctx.refresh();
'BackEnd > Spring' 카테고리의 다른 글
[Maven] Servlet/JSP 라이브러리 설정하기 (0) | 2021.09.28 |
---|---|
[Spring] AOP (0) | 2021.09.08 |
[Spring] @Component의 역할 (0) | 2021.09.08 |
[Spring] @Autowired의 역할 (0) | 2021.08.30 |
[Spring] 이클립스에 Maven Repository 라이브러리 가져오기 (0) | 2021.08.28 |
댓글