首页 > 代码库 > 如何注入值到Spring bean属性

如何注入值到Spring bean属性

在Spring中,有三种方式注入值到 bean 属性。
  • 正常的方式
  • 快捷方式
  • “p” 模式
看到一个简单的Java类,它包含两个属性 - name 和 type。稍后将使用Spring注入值到这个 bean 属性。
package com.yiibai.common;public class FileNameGenerator {	private String name;	private String type;		public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public String getType() {		return type;	}	public void setType(String type) {		this.type = type;	}}
1.正常方式
在一个“value”标签注入值,并附有“property”标签结束。
<beans xmlns="http://www.springframework.org/schema/beans"	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	xsi:schemaLocation="http://www.springframework.org/schema/beans	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">	<bean id="FileNameGenerator" class="com.yiibai.common.FileNameGenerator">		<property name="name">			<value>yiibai</value>		</property>		<property name="type">			<value>txt</value>		</property>	</bean></beans>
2,快捷方式
注入值“value”属性。
<beans xmlns="http://www.springframework.org/schema/beans"	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	xsi:schemaLocation="http://www.springframework.org/schema/beans	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">	<bean id="FileNameGenerator" class="com.yiibai.common.FileNameGenerator">		<property name="name" value="http://www.mamicode.com/yiibai" />		<property name="type" value="http://www.mamicode.com/txt" />	</bean>	</beans>

3. “p” 模式

通过使用“p”模式作为注入值到一个属性。
<beans xmlns="http://www.springframework.org/schema/beans"	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	xmlns:p="http://www.springframework.org/schema/p"	xsi:schemaLocation="http://www.springframework.org/schema/beans	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">	<bean id="FileNameGenerator" class="com.yiibai.common.FileNameGenerator"              p:name="yiibai" p:type="txt" />	</beans>
记住声明 xmlns:p=”http://www.springframework.org/schema/p" 在Spring XML bean配置文件。
总结
这些方法的使用完全是基于个人喜好,也不会影响注入bean属性的值。
 
http://www.yiibai.com/spring/how-to-define-bean-properties-in-spring.html

如何注入值到Spring bean属性