1.byName
<?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"> <!-- 由于是按照name自动装配的,所以属性id的值(userDAO)要和UserService中成员变量userDAO一致 --> <bean id="userDAO" class="com.test.dao.impl.UserDAOImpl"> <property name="daoId" value="1"></property> </bean> <bean id="userService" class="com.test.service.UserService" autowire="byName"></bean> </beans>
2.byType
<?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"> <!-- 由于是按照type自动装配的,所以属性id的值(userDAO2)要和UserService中成员变量userDAO可以不一致 --> <bean id="userDAO2" class="com.test.dao.impl.UserDAOImpl"> <property name="daoId" value="2"></property> </bean> <bean id="userService" class="com.test.service.UserService" autowire="byType"></bean> </beans>
3.default
<?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="byType"> <bean id="userDAO3" class="com.test.dao.impl.UserDAOImpl"> <property name="daoId" value="3"></property> </bean> <!-- 如果这里autowire为default(本来默认就是default),就会用到beans里面的default-autowire配置 --> <bean id="userService" class="com.test.service.UserService"></bean> </beans>
UserDAOImpl.java
package com.test.dao.impl; import com.test.dao.UserDAO; import com.test.model.User; public class UserDAOImpl implements UserDAO { private int daoId; public int getDaoId() { return daoId; } public void setDaoId(int daoId) { this.daoId = daoId; } public void save(User user) { System.out.println("user saved!"); } }
UserService.java
package com.test.service; import com.test.dao.UserDAO; import com.test.model.User; public class UserService { private UserDAO userDAO; public UserDAO getUserDAO() { return userDAO; } public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } public void add(User user) { userDAO.save(user); } }
UserServiceTest.java
package com.test.service; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.test.dao.impl.UserDAOImpl; public class UserServiceTest { @Test public void testAdd() throws Exception { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml"); UserService service = (UserService) applicationContext.getBean("userService"); UserDAOImpl userDAOImpl = (UserDAOImpl) service.getUserDAO(); System.out.println("daoId = " + userDAOImpl.getDaoId()); } }
相关推荐
ean的自动装配,有4种 (1)no:不做任何操作 (2)byName:根据属性 名 自动装配,设值注入 <bean id="xxx" class="xxx" ></bean> (3)byType:根据属性 类型 自动装配,相同类型多个会抛出异常,设值注入 ...
spring自动装配项目struts2,使用了struts2 ,spring2.5 ,hibernate,和spring 自动装配
Spring自动装配解析,具体效果和过程看博文 http://blog.csdn.net/evankaka/article/details/44836069
Spring自动装配的方式和举例、以及@Qualifier、@Autowire、@Resource的使用。
Spring 自动装配及其注解 博客:https://blog.csdn.net/u010476739/article/details/76735241
本项目为Java项目,使用Spring实现自动装配,根据类型方式实现自动装配。适合初学者了解Spring不同装配方式。
主要为大家详细介绍了Java注解机制之Spring自动装配实现原理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
NULL 博文链接:https://garrincha.iteye.com/blog/2109688
Spring中的自动装配有哪些限制?.docx Spring中的自动装配有哪些限制?.docx Spring中的自动装配有哪些限制?.docx
我知道大家有些学的自动转配模式不清楚,所以我传了一个自动转配的模式表
主要介绍了Spring 自动装配的二义性实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
spring的自动装配
主要介绍了Spring自动装配Bean实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
主要介绍了spring 自动装配和aop的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了Spring自动装配与扫描注解代码详解,具有一定借鉴价值,需要的朋友可以参考下。
今天小编就为大家分享一篇关于Spring中自动装配的4种方式,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
基于java实现的类似spring自动装配的代码。
主要介绍了JSP Spring 自动化装配Bean实例详解的相关资料,需要的朋友可以参考下
Spring个人笔记,共计59页。第一天内容:Spring框架简介(EJB、JMX、Spring核心功能、Spring模块...第三天内容:Spring自动装配,Spring自动加载properties文件,单例设计模式,声明式事务,Ajax,JSON。 --author: