实例工厂方法:将对象的创建过程封装到另外一个对象实例的方法里。

即实现需要创建工厂本身,再调用工厂的实例方法来返回bean的实例。

一、知识点

概念:

  1. factory-bean:指向实例工厂方法的bean。
  2. factory-method:指向实例工厂方法的名字。
  3. constructor-arg:如果工厂方法需要传入参数,则使用constructor-arg的value属性来配置参数。

实例工厂方法:将对象的创建过程封装到另外一个对象实例的方法里。

当客户端需要请求对象时,只需要简单的调用该实例方法,不需要关心对象的创建细节。

具体使用:

  1. 要声明通过实例工厂方法创建的bean。
  2. 在bean的factory-bean属性里指定拥有该工厂方法的bean。
  3. 在factory-method属性里指定该工厂方法的名称。
  4. 使用construtor-arg元素为工厂方法传递方法参数。

二、代码实现

因为是实例工厂方法,所以必须创建实例。实例为:

配置staticfactory.xml:

运行结果为:

正常输出了结果。

三、总结

再次总结一下配置参数:

  1. factory-bean:指向实例工厂方法的bean。
  2. factory-method:指向实例工厂方法的名字。
  3. constructor-arg:如果工厂方法需要传入参数,则使用constructor-arg的value属性来配置参数。

其实和静态工厂是非常类似的,应该很好理解。

发表评论

电子邮件地址不会被公开。 必填项已用*标注