3개의 예제를 통해 스프링사용의 장점을 알아보자
Case1.
Hellotest.java
package j0818.t3;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
public class HelloTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Resource resource = new ClassPathResource("j0818/t3/applicationContext.xml");
BeanFactory factory= new XmlBeanFactory(resource);//xml값 얻어오기
MessageBean msg=(MessageBean) factory.getBean("messageBean");
msg.sayHello("홍길동~");//xml에서 class값으로 객체를 조종할수있다..
}
}
|
MessageBean.java
package j0818.t1;
public class MessageBean {
public void sayHello(String name){
System.out.println("Hello,"+name);
}
}
|
Case2.
Hellotest.java
package j0818.t2;
public class HelloTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
MessageBean msg = new MessageBeanEn();//객체값만 변경하여 호출할수있다
msg.sayHello("길덕");
}
}
|
MessageBean.java (interface)
package j0818.t2;
public interface MessageBean {
public void sayHello(String name);//인터페이스니까 바디없는 메소드를 만든다?
}
|
MessageBeanEn.java
package j0818.t2;
public class MessageBeanEn implements MessageBean {
public void sayHello(String name) {
System.out.println("Hello,"+name);
}
}
|
MessageBeanKo.java
package j0818.t2;
public class MessageBeanKo implements MessageBean {
public void sayHello(String name) {
// TODO Auto-generated method stub
System.out.println("안녕,"+name);
}
}
|
Hellotest.java
package j0818.t3;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
public class HelloTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Resource resource = new ClassPathResource("j0818/t3/applicationContext.xml");
BeanFactory factory= new XmlBeanFactory(resource);//xml값 얻어오기
MessageBean msg=(MessageBean) factory.getBean("messageBean");
msg.sayHello("홍길동~");//xml에서 class값으로 객체를 조종할수있다..
}
}
|
package j0818.t3;
public interface MessageBean {
public void sayHello(String name);//인터페이스니까 바디없는 메소드를 만든다?
}
|
MessageBeanEn.java
package j0818.t3;
public class MessageBeanEn implements MessageBean {
public void sayHello(String name) {
// TODO Auto-generated method stub
System.out.println("Hello,"+name);
}
}
|
MessageBeanKo.java
package j0818.t3;
public class MessageBeanKo implements MessageBean {
public void sayHello(String name) {
// TODO Auto-generated method stub
System.out.println("안녕,"+name);
}
}
|
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd ">
<bean id="messageBean" class="j0818.t3.MessageBeanEn"></bean>
</beans>
|

