자동차에서 핸들과 값을 지정한다. 이때 핸들 중에 어떤 핸들을 지정할지를 xml파일에다가 설정을 해준다.
먼저, 생성할 객체들을 bean태그를 이용해 지정해 준다.
1. <constructor-arg>태그
<bean id="car" class="com.javalec.car.HDCar"> <!-- 핸들 중에서 das 핸들을 사용할 것, 생성자에 전달할 파라미터 값을 constructor-arg를 통해 설정--> <constructor-arg ref="das"></constructor-arg> <constructor-arg value="1000"></constructor-arg> </bean> <bean id="das" class="com.javalec.car.DASHandle"></bean> <bean id="lg" class="com.javalec.car.LGHandle"></bean>
public class HDCar implements ICar { private IHandle handle; private int price; //생성자를 이용해 필요한 값을 전달받고 있다. public HDCar(DASHandle handle, int price) { this.handle = handle; this.price = price; } }
2. <property>태그
<bean id="car" class="com.javalec.car.HDCar"> <property name="handle" ref="lg"></property> <!-- ref : bean 객체의 id값 --> <property name="price" value="2000"></property> </bean> <bean id="das" class="com.javalec.car.DASHandle"></bean> <bean id="lg" class="com.javalec.car.LGHandle"></bean>
public class HDCar implements ICar { private IHandle handle; private int price; public void setHandle(IHandle handle) { this.handle = handle; } public void setPrice(int price) { this.price = price; } }
*DAO객체를 controller에 주입해보기
public class GuestBookController { private GuestBookDAO guestbookDao; public void setGuestbookDao(GuestBookDAO guestbookDao) { this.guestbookDao = guestbookDao; } }
<bean id="GuestBookDAO" class="com.javalec.guestbook.dao.GuestBookDAO"></bean> <bean id="GuestBook" class="com.javalec.guestbook.controller.GuestBookController"> <property name="guestbookDao" ref="GuestBookDAO"></property> </bean>