4. MainClass.java
해당 클래스는
/src/test/java에서
com.java패키지 위치에다 만든 자바클래스이다.
(/src/test/java/com/java)
String config = "classpath:/message.xml"; 을 사용 하기 위해서
ApplicationContext을 임포트 해줘야한다.
ac 는 아무거나 써도되지만 알아보기 쉽게 쓰자. (현재써놓은건 축약어)
= new GenericXmlApplicationContext(config);는 ac를
GenericXmlApplicationContext(config)으로 초기화 한다는 의미이다.
MainClass messageA =(MainClass) ac.getBean("mainA");
는 message.xml 파일에 id가 mainA인 bean의 데이터를 messageA에다가 받아온다는 뜻이다.
좀더 넓게 펼쳐 해석하면
MainClass messageA =(MainClass) ac.getBean("mainA");는
MainClass messageA =(MainClass) GenericXmlApplicationContext("classpath:/message.xml").getBean("mainA");
이라고 보면된다.
소스................
package com.java;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class MainClass {
Message message;
public static void main(String[] args){
String config = "classpath:/message.xml";
ApplicationContext ac = new GenericXmlApplicationContext(config);
MainClass messageA =(MainClass) ac.getBean("mainA");
MainClass messageB =(MainClass) ac.getBean("mainB");
messageA.render();
messageB.render();
}
public void render() {
System.out.println(message.getMessage());
}
public void setMessage(Message message) {
this.message = message;
}
}