第一种:使用类的无参数构造创建
<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>
1.接口注入
public class classa {
private interfaceb clzb;
public void dosomething() {
ojbect obj = class.forname(config.bimplementation).newinstance();
clzb = (interfaceb)obj;
clzb.doit();
}
……
}
2.setter方法注入
3.构造器注入
如对本文有疑问, 点击进行留言回复!!
HashMap、Hashtable、ConcurrentHashMap三者间的异同
解决RecycleView 中Item包含Edittext时,滑动view复用导致数据错乱的问题
多线程、同步工作原理、死锁案例、Lock接口、线程的生命周期的讲解及实现
网友评论