当一个bean仅在另外一个bean内部生效,作为另外一个bean的属性时,这个bean就称为内部bean,spring的基于xml的容器配置支持在bean的<property>和<constructor-arg>标签内部使用<bean>标签来定义内部bean,内部bean无需定义名称,是匿名的。
如:
假设我们有一个 Student 类,其中引用了 Person 类。这里我们将只创建一个 Person 类实例并在 Student 中使用它。
public class Student {
private Person person;
//Setters and Getters
}
public class Person {
private String name;
private String address;
//Setters and Getters
}
bean.xml
<bean id="studentBean" class="com.eureka.Student">
<property name="person">
<!--This is a inner bean -->
<bean class="com.edureka.Person">
<property name="name" value="Scott"></property>
<property name="address" value="Bangalore"></property>
</bean>
</property>
</bean>