spring的控制反转(IOC)就是说以来注入。现在是我自己总结的基本依赖注入。基本依赖注入:1.属性注入 2.构造器注入 3.工厂注入
1.基本注入的beans.xml中的配置:已People类为例子
<bean id="people" class="com.java.model.People">
<property name="id" value="1"></property>
<property name="name" value="老大"></property>
<property name="age" value="11"></property>
</bean>
2.构造注入的bean.xml中的配置:用前必须要有构造器。
1类型构造
<bean id="people2" class="com.java.model.People">
<constractor-arg type="int" value="2"></constractor-arg>
<constractor-arg type="String" value="老二"></constractor-arg>
<constractor-arg type="int" value="22"></constractor-arg>
</bean>
2index构造 要从0开始
<bean id="people3" class="com.java.model.People">
<constractor-arg index="0" value="3"></constractor-arg>
<constractor-arg index="1" value="老三"></constractor-arg>
<constractor-arg index="2" value="33"></constractor-arg>
</bean>
3类型和index构造混着用
<bean id="people4" class="com.java.model.People">
<constractor-arg type="int" index="0" value="4"></constractor-arg>
<constractor-arg type="String" index="1" value="老四"></constractor-arg>
<constractor-arg type="int" index="2" value="44"></constractor-arg>
</bean>
3. 工厂注入:(非静态注入,静态注入)创建PeopleFactory类,有创建人的方法
public People createPeople(){
People people= new People();
people.setId(5);
people.setName("老五");
people.setAge(55);
return people;
}
非静态注入:
<bean id="peopleFactory" class="com.java.factory.PeopleFactory"></bean>
<bean id="people5" factory-bean="peopleFactory" factory-method="createPeople"></bean>
静态注入:在工厂类里要写静态的方法
public static People createPeople2(){
People people= new People();
people.setId(6);
people.setName("老六");
people.setAge(66);
return people;
}
<bean people id="people6" class="com.java.factory.PeopleFactory"
factory-method="createPeople2"></bean>