介绍
FactoryBean如何在春天中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
spring FactoryBean是创建复杂的豆,一般的bean直接用xml配置即可,如果一个bean的创建过程中涉及到很多其他的bean和复杂的逻辑,用xml配置比较困难,这时可以考虑用FactoryBean
例子如下:
1:创建一个汽车类(是为了简便)一般不能直接给出汽车类,如果是这样直接注入就可以或者汽车对象了,这里只是为了简便。
包com.myapp.core.factorybean; 公共类车{ 私人的字符串; 私人int; 公共字符串getMake () { 返回; } 公共空间setMake(字符串){ 这一点。让=让; } 公共int getYear () { 返回; } 公共空间setYear (int) { 这一点。年=一年; } }
2:一个FactoryBean的实现拥有创建汽车
包com.myapp.core.factorybean; 进口org.springframework.beans.factory.FactoryBean; 公共类MyCarFactoryBean实现FactoryBean以上中创建汽车太简单了,如果太简单就没有必要用FactoryBean创建了,可以写的复杂些。
3:人引用一个汽车
包com.myapp.core.factorybean; 公共类人{ 私人汽车的车; 公共汽车getCar () { 返回的车; } 公共空间setCar(汽车车){ 这一点。车=车; } 公共字符串toString () { 返回car.getMake () +“::::“+ car.getYear (); } }4:配置引用xml格式:
& lt; bean id=癱ar"类=癱om.myapp.core.factorybean.MyCarFactoryBean"比; & lt;属性名=袄弦?值=https://www.yisu.com/zixun/"添麻烦汽车"/> <属性名="年" value=" 123 "/> 豆><属性名="车" ref="车"/> 豆> 5:编写测试类测试:
包com.myapp.core.factorybean; 进口org.springframework.context.ApplicationContext; 进口org.springframework.context.support.ClassPathXmlApplicationContext; 公开课maint { 公共静态void main (String [] args) { ApplicationContext上下文=new ClassPathXmlApplicationContext(“资源/others.xml"); 人的人=(人)context.getBean (“person");//车车=(汽车)context.getBean (“car");//System.out.println(车); System.out.println(人); } }测试结果添麻烦汽车::::123
利用FactoryBean创建汽车成功
只是为了说明思想。因为这个接口太重要了。在春天中有很多类实现了该接口。
看完上述内容,你们掌握FactoryBean如何在春天中使用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
FactoryBean如何在春天中使用