您的位置:首页 > 编程语言 > Java开发

Spring注入方式

2016-01-05 17:28 351 查看
一.Spring注入的方式通常有两种:

(1)属性的set注入(推荐使用)

(2)构造方法注入(不推荐)

关键类如下:

Chinese类:

package com.java.spring;
public class Chinese implements Person {
private Tool tool;
//方法1:使用set方法(推荐使用)
public Tool getTool() {
return tool;
}
public void setTool(Tool tool) {
this.tool = tool;
}
/*//方法2:构造方法(少用)
public Chinese(Tool tool){
this.tool=tool;
}
*/
@Override
public void work() {
// TODO Auto-generated method stub
tool.realwork();
}

}


ConcreteToolA类:

package com.java.spring;
public class ConcreteToolA implements Tool {
@Override
public void realwork() {
// TODO Auto-generated method stub
System.out.println("from concreteToolA");
}
}


applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<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-3.0.xsd"> 
<bean id="toolA" class="com.java.spring.ConcreteToolA"></bean>
<bean id="toolB" class="com.java.spring.ConcreteToolB"></bean>

<bean id="chinese" class="com.java.spring.Chinese">
<property name="tool" ref="toolB"></property>
<!--  方法2:少用
<constructor-arg>
<ref local="toolA"/>
</constructor-arg>
--></bean>

</beans>


对于bean的autowire属性来说,推荐使用default默认值(即手工完成属性的注入工作)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring