体验spring(四)---Bean的自动装配1

Bean的自动装配--NO模式

Spring IoC容器可以自动装配autowire相互协作bean之间的关联关系. xml配置文件中,autowire一共有五种类型,可以在<bean/>元素中使用autowire属性来指定装配模式,自动装配可以减少配置的数量。

Autowire=’defalut’ 
autowire:在每个bean中都一个autowire=default的默认配置它的含义是:
		采用beans和跟标签中的default-autowire="属性值"一样的设置。
配置文件中的代码
<?xml version="1.0" encoding="UTF-8"?>
<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"
           default-autowire="no">
	<bean id="empServiceImpl" class="cn.csdn.service.EmpServiceImpl"
		scope="singleton" autowire="default " />
</beans>
红色字体含义:默认装配模式为no模式即EmpServiceImpl类不使用自动装配

 

第一种:

No模式:

Autoeire=’no’

不使用自动装配。必须通过ref元素指定依赖,这是默认设置。由于显式指定协作者可以使配置更灵活、更清晰,因此对于较大的部署配置,推荐采用该设置。而且在某种程度上,它也是系统架构的一种文档形式。

案例:

<bean id="teacherServiceImpl" class="cn.csdn.service.TeacherServiceImpl"
scope="singleton"  autowire="no">
		<property name="studentServiceImpl" ref="studentServiceImpl"></property>
</bean>

<bean id="studentServiceImpl" class="cn.csdn.service.StudentServiceImpl"
		scope="singleton" />

Student类
public class StudentServiceImpl {
	public StudentServiceImpl() {
		System.out.println("studnetService初始化完成...");
	}
}

Teacher类
public class TeacherServiceImpl {
	private StudentServiceImpl studentServiceImpl;
	public TeacherServiceImpl() {
		
		System.out.println("teacherservice初始化完毕...");
	}
	public void setStudentServiceImpl(StudentServiceImpl studentServiceImpl) {
		this.studentServiceImpl = studentServiceImpl;
	}
	public void insert(){
		System.out.println("测试no解析。。。。");
	}
	
}

 

 

猜你喜欢

转载自dxl-xiaoli.iteye.com/blog/1041709