标题静态工厂注入bean、实例工厂注入bean及autowirted自动配置综合练习
一、静态工厂方法注入bean
将对象创建的过程封装到静态方法中 。
在XML文件中配置bean时,要声明通过静态方法创建的 bean , 需要在 bean 的 class 属性里面指定拥有该工厂的方法的类 , 同时在 factory-method 属性里指定工厂方法的名称。最后 , 使用 元素为该方法传递方法参数。
用静态工厂来实例bean的话需要我们创建一个工厂类,提供一个静态的方法,此方法负责bean的实例化。
二、实例化静态工厂注入bean
将对象的创建过程封装到另外一个对象实例的方法里。当客户端需要请求对象时 , 只需要简单的调用该实例方法。
要声明通过实例工厂方法创建的 bean:
1.在 bean 的factory-bean 属性里指定拥有该工厂方法的bean。
2.在 factory-method 属性里指定该工厂方法的名称。
3.使用 元素为工厂方法传递方法参数。
注意!!!在配置文件中,bean的factory-bean属性值是工厂id。
三.静态工厂方法和实例工厂方法的区别
实例工厂与静态工厂的区别就是前者需要在容器中将工厂实例化,后者不需要实例化工厂,直接调用静态方法即可,因为静态方法可以直接通过类名调用,所以不用将工厂实例化。
四.autowired自动装配
Autowired注解,它可以对类成员变量、方法及构造函数进行标注,完成IOC容器自动装配的工作。
属性:
byName:通过名字自动赋值,属性名字。
byType:通过类型自动赋值。
constructor:通过有参构造器自动赋值。
五.例子
题目