8.5. 从 factory bean 创建 Bean
您可以从 factory bean 创建 bean,如下所示:
factory XML
<bean name="myBean" type="com.acme.MyBean"
factoryBean="com.acme.MyHelper" factoryMethod="createMyBean">
<constructors>
<constructor index="0" value="true"/>
<constructor index="1" value="Hello World"/>
</constructors>
</bean>
提示
您还可以使用 factoryBean 来通过 bean id 而不是 FQN classname 来引用现有的 bean。
使用 factoryBean 时,您必须提供参数作为 构造器 标签。
例如,类 com.acme.MyHelper 应该如下:
factory bean
public class MyHelper {
public static MyBean createMyBean(boolean important, String message) {
MyBean answer = ...
// create and configure the bean
return answer;
}
}
注意
您必须使 factory 方法 是公共静态的。