Person.java
package com.test.diEx03;
public class Person {
private String name;
private String gender;
private String age;
private String idNo;
public Person() {};
public Person(String name, String gender, String age, String idNo){
this.name = name;
this.gender = gender;
this.age = age;
this.idNo = idNo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo;
}
}
PersonInfo.java
package com.test.diEx03;
public class PersonInfo {
private Person person;
public PersonInfo() {};
public PersonInfo(Person person) {
this.person = person;
}
public void getPersonInfo(){
if(person!=null){
System.out.println("name: "+person.getName());
System.out.println("gender: "+person.getGender());
System.out.println("age: "+person.getAge());
System.out.println("id: "+person.getIdNo());
System.out.println("============================");
}
}
public void setPerson(Person person){
this.person = person;
}
}
Main.java
package com.test.diEx03;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class Main {
public static void main(String[] args){
String confLoc = "classpath:person.xml";
AbstractApplicationContext ctx = new GenericXmlApplicationContext(confLoc);
PersonInfo personInfo = ctx.getBean("personInfo",PersonInfo.class);
personInfo.getPersonInfo();
// PersonInfo에 객체(reference) 주입
Person person =ctx.getBean("person2",Person.class); // Spring 컨테이너(xml)에 객체를 입력
personInfo.setPerson(person);
personInfo.getPersonInfo();
ctx.close(); // Context 사용 후 닫아준다.
}
}
'기존카테고리 > Spring_basic1' 카테고리의 다른 글
DI 의 장점( Interface) (0) | 2017.07.10 |
---|---|
DI - 프로퍼티(property) 방식 (0) | 2017.07.10 |
DI - Constructor(생성자)를 통한 주입 (0) | 2017.07.10 |
DI(Dependency Injection) setter(설정 메소드)를 이용한 주입 (0) | 2017.07.10 |
DI 실습1 (0) | 2017.07.09 |