spring基于xml注入bean的几种方式
时间: 2023-05-08 11:58:59 浏览: 137
spring的三种注入方式
Spring框架是一种轻量级的Java开发框架,主要使用依赖注入和面向切面编程等技术来完成应用程序的开发和管理。在Spring框架中,注入Bean是非常重要的一个概念。在XML配置文件中,可以使用以下几种方式来注入Bean:
1. Constructor注入
使用Constructor注入是指在Bean实例化时,通过构造函数(Constructor)注入需要的依赖。在配置文件中使用 <constructor-arg> 标签来配置参数,例如:
<bean id="foo" class="com.example.Foo">
<constructor-arg index="0" value="fooValue"/>
<constructor-arg index="1" value="barValue"/>
</bean>
2. Setter注入
使用Setter注入是指在Bean实例化后,通过Setter方法注入需要的依赖。在配置文件中使用 <property> 标签来配置参数,例如:
<bean id="foo" class="com.example.Foo">
<property name="foo" value="fooValue" />
<property name="bar" value="barValue" />
</bean>
3. 静态工厂方法注入
使用静态工厂方法注入是指通过静态工厂方法(static factory method)来实例化Bean,并注入需要的依赖。在配置文件中使用 <bean> 标签的 factory-method 属性来指定工厂方法名称,例如:
<bean id="foo" class="com.example.Foo" factory-method="createFoo">
<constructor-arg index="0" value="fooValue"/>
<constructor-arg index="1" value="barValue"/>
</bean>
4. 实例化工厂方法注入
使用实例化工厂方法注入是指在Bean实例化前,通过实例化工厂方法(factory method)来实例化Bean,并注入需要的依赖。在配置文件中使用 <bean> 标签的 factory-bean 和 factory-method 属性来指定工厂Bean和工厂方法名称,例如:
<bean id="fooFactory" class="com.example.FooFactory"/>
<bean id="foo" factory-bean="fooFactory" factory-method="createFoo">
<constructor-arg index="0" value="fooValue"/>
<constructor-arg index="1" value="barValue"/>
</bean>
阅读全文