设置注入和构造注入
<?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.xsd">
<!-- <bean id="injectionService" class="com.imooc.ioc.injection.service.InjectionServiceImpl">
设值注入************** 属性名称*************引入属性的类的标示
<property name="injectionDaoName" ref="injectionDao"></property>
</bean> -->
<bean id="injectionService" class="com.imooc.ioc.injection.service.InjectionServiceImpl">
<!-- 构造注入**************属性名称************** 引入属性的类的标示 -->
<constructor-arg name="injectionDaoName" ref="injectionDao"></constructor-arg>
</bean>
<!-- 把相关属性注入到此的类中 -->
<bean id="injectionDao" class="com.imooc.ioc.injection.dao.InjectionDaoImpl"></bean>
</beans>
相关java实现代码:
private InjectionDao injectionDaoName;
//构造注入
public InjectionServiceImpl(InjectionDao injectionDaoName) {
super();
this.injectionDaoName = injectionDaoName;
}
//设值注入
public void setInjectionDaoName(InjectionDao injectionDaoName) {
this.injectionDaoName = injectionDaoName;
}
自动注入
<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.xsd"
<!-- 需要在代码中引入属性,声明get方法或创建构造器 -->
default-autowire="byName/byType/constructor">
<bean id="autoWiringService" class="com.imooc.ioc.autowiring.AutoWiringService"></bean>
<bean id="autoWiringDao" class="com.imooc.ioc.autowiring.AutoWiringDao"></bean>
</beans>