1):通过bean对象的setter方法,属性注入. 使用<property name=”属性名称” > 推荐.
1):简单数据类型. 使用value.
2):复合数据类型. 使用ref.
3):集合数据类型. 使用集合的元素.
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
- <!-- 关键部分 -->
- <bean id="bean1" class="com.spring.demo.Bean1"></bean>
-
- </beans>
- package com.spring.demo;
-
- public class Bean2Factory {
- public static Bean2 getBean2(){
- return new Bean2();
- }
- }
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
- <!-- 关键部分 -->
- <bean id="bean2" class="com.spring.demo.Bean2Factory" factory-method="getBean2"></bean>
-
-
- </beans>
- package com.spring.demo;
-
- public class Bean3Factory {
- public Bean3 getBean3(){
- return new Bean3();
- }
- }
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
- <!-- 关键部分 -->
- <bean id="bean3factory" class="com.spring.demo.Bean3Factory"></bean>
- <bean id="bean3" factory-bean="bean3factory" factory-method="getBean3"></bean>
-
-
- </beans>
- public class ClassA {
- private InterfaceB clzB;
- public void doSomething() {
- Ojbect obj = Class.forName(Config.BImplementation).newInstance();
- clzB = (InterfaceB)obj;
- clzB.doIt();
- }
- ……
- }