<bean id="empBean" class="com.techfaq.EmpBean">
<!-- setter injection using the nested <ref/> element -->
<property name="addressBean"><ref bean="addressBean"/></property>
</bean>
<bean id="addressBean" class="com.techfaq.AddressBean"/>
|
The Java Code is (EmpBean.java)
package com.techfaq;
public class EmpBean {
private AddressBean addressBean;
public void setAddressBean(AddressBean addressBean) {
this.addressBean = addressBean;
}
public AddressBean getAddressBean() {
return addressBean;
}
}
|
The Java Code is (AddressBean.java)
package com.techfaq;
public class AddressBean {
private int id;
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
}
|
Constructor Injection:
Find below an example of a class that can only be dependency injected using pure Constructor injection.
XML configuration for Constructor Dependency Injection is below
<bean id="empBean" class="com.techfaq.EmpBean">
<!-- setter injection using the nested <ref/> element -->
<constructor-arg><ref bean="addressBean"/></constructor-arg>
<!--OR you can use <constructor-arg ref="yetAnotherBean"/>-->
</bean>
<bean id="addressBean" class="com.techfaq.AddressBean"/>
|
The Java Code is (EmpBean.java)
package com.techfaq;
public class EmpBean {
private AddressBean addressBean;
public EmpBean(AddressBean addressBean) {
this.addressBean = addressBean;
}
public AddressBean getAddressBean() {
return addressBean;
}
}
|
The Java Code is (AddressBean.java)
package com.techfaq;
public class AddressBean {
private int id;
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
}
|