spring bean工厂方法注入,工厂代码
时间: 2024-03-01 13:52:20 浏览: 77
好的,下面是一个使用工厂方法创建bean并注入到Spring容器中的示例代码:
首先,我们需要创建一个工厂类,用于创建Person对象:
```java
public class PersonFactory {
public Person createPerson(String name, int age) {
return new Person(name, age);
}
}
```
在上面的代码中,我们定义了一个createPerson方法,用于创建Person对象。
接下来,在Spring配置文件中,我们需要使用<bean>标签来定义一个id为person的bean,并且指定它的class属性为PersonFactory。然后,我们使用<factory-method>标签来指定使用工厂方法createPerson来创建bean,并且使用<constructor-arg>标签来注入createPerson方法所需的参数:
```xml
<bean id="personFactory" class="com.example.PersonFactory" />
<bean id="person" factory-bean="personFactory" factory-method="createPerson">
<constructor-arg value="张三" />
<constructor-arg value="18" />
</bean>
```
在上面的代码中,我们定义了一个id为person的bean,并且指定它的工厂bean为personFactory,工厂方法为createPerson。然后,我们使用<constructor-arg>标签来注入createPerson方法所需的name和age参数。
这样,当Spring容器启动时,它会先创建personFactory对象,然后调用personFactory的createPerson方法创建一个Person对象,并将其注入到id为person的bean中。
阅读全文