一、什么是自动装配

根据指定的策略,在IOC容器中匹配某一个bean,自动为指定的bean中所依赖的类类型或接口类型属性赋值。

二、自动装配的使用

可以通过bean标签中的autowire属性设置自动装配的策略。

 * 自动装配的策略, 也就是autowire属性的可取值:* 1、no,default:表示不装配,即bean中的属性不会自动匹配某个bean为属性赋值,此时属性使用默认值* 2、byType:根据要赋值的属性的类型,在IOC容器中匹配某个bean,为属性赋值* 注意:* a>若通过类型没有找到任何一个类型匹配的bean,此时不装配,属性使用默认值* b>若通过类型找到了多个类型匹配的bean,此时会抛出异常:NoUniqueBeanDefinitionException* 总结:当使用byType实现自动装配时,IOC容器中有且只有一个类型匹配的bean能够为属性赋值* 3、byName:将要赋值的属性的属性名作为bean的id在IOC容器中匹配某个bean,为属性赋值* 总结:当类型匹配的bean有多个时,此时可以使用byName实现自动装配

比如DAO->Service->Control的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"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="userController" class="com.lucky.spring.controller.UserController" autowire="byName"><!--<property name="userService" ref="userService"></property>--></bean><bean id="userService" class="com.lucky.spring.service.impl.UserServiceImpl" autowire="byName"><!--<property name="userDao" ref="userDao"></property>--></bean><bean id="service" class="com.lucky.spring.service.impl.UserServiceImpl" autowire="byName"><!--<property name="userDao" ref="userDao"></property>--></bean><bean id="userDaoImpl" class="com.lucky.spring.dao.impl.UserDaoImpl"></bean><bean id="dao" class="com.lucky.spring.dao.impl.UserDaoImpl"></bean></beans>

直接用autowire实现注入,不用使用property标签下的ref属性,为bean中的类类型属性进行赋值了。

【Spring】基于xml文件的Autowire自动装配相关推荐

  1. Spring基础——在 Spring Config 文件中基于 XML 的 Bean 的自动装配

    一.Spring IOC 容器支持自动装配 Bean,所谓自动装配是指,不需要通过 <property> 或 <constructor-arg> 为 Bean 的属性注入值的过 ...

  2. java spring bean配置文件_Spring基于xml文件配置Bean过程详解

    这篇文章主要介绍了spring基于xml文件配置Bean过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 通过全类名来配置: class:be ...

  3. autowire自动装配

    autowire自动装配 autowire自动装配 auto自动装配就是在要使用bean的时候进行自动注入 !注意! :自动注入只能注入引用数据类型和自定义类,其中基础数据类型和String数据类型不 ...

  4. Spring autowire 自动装配简介

    Spring autowire 自动装配简介 注意本文与一般spring 标注@Autowire 无关 如下例子定义了3个类 Dperson Dcar & Daddress 其中Dperson ...

  5. Spring基于XML装配Bean

    Bean 的装配可以理解为依赖关系注入,Bean 的装配方式也就是 Bean 的依赖注入方式.Spring 容器支持多种形式的 Bean 的装配方式,如基于 XML 的 Bean 装配.基于 Anno ...

  6. Spring Autowire自动装配(转http://lep1985520.blog.163.com/blog/static/56600480200901441338486/)

    Spring Autowire自动装配 技术收藏 2009-01-14 16:13:38 阅读284 评论0   字号:大中小 订阅 Spring Autowire自动装配   在应用中,我们常常使用 ...

  7. Spring Autowire自动装配 ---残梦追月原创

    在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象.但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的< ...

  8. Spring Autowire自动装配介绍

    在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象.但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的< ...

  9. Spring Autowire自动装配

    1.在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象,同时也Spring为我们提供了一个自动装配的机制,在定义Bean时,<bean>标签有一个autow ...

最新文章

  1. 被人恨,但感觉不错!
  2. 飞天大数据平台助力轻松筹数字化运营
  3. ServiceMash服务网格--理解lstio/envoy
  4. Flink : The object probably contains or references non-serializable fields.
  5. List 去除重复数据的 5 种正确姿势!
  6. 详细讲解大型数据库的设计原则与开发技巧
  7. JAVA万能:JNLP在浏览器上以WEB方式运行JAVA程序
  8. 兆能Z82机顶盒-卡刷-刷机固件
  9. 大数据 (016)Hadoop-MR编程 -- 【使用hadoop计算微博用户可能喜欢的关键词----编程】
  10. 企业微信发送信息异常的临时处理方案
  11. 我的个人博客网站是怎么制作的?
  12. 通过网页链接直接下载APK
  13. word2vec python实现
  14. 2018ACM-ICPC焦作站 补题
  15. 虚拟化存储和非虚拟化存储
  16. C#如何将汉字转换成拼音
  17. 转载:浅谈Session与Cookie的区别与联系
  18. 战地3皓月服务器win10系统,战地3配置
  19. 古诺双寡头模型MATLAB求解(博弈论)
  20. 小众爱好之滑翔伞运动

热门文章

  1. php的filetype,PHP filetype( )用法及代码示例
  2. 大班音乐机器人反思_大班音乐活动机器人教案反思
  3. 合肥工业大学计算机组成原理实验报告
  4. 计算机科学投稿初审被增刊,科学网—投稿过程中的困惑:增刊 - 张晓锋的博文...
  5. vue项目中由于eslint检查太严谨而报错的bug,怎么解决删除eslint
  6. 看各大安全厂商对等保2.0的应对措施及解决方案
  7. js实现案例全选全不选(超详细)
  8. 一款C/C++经典的益智3D卡通推箱子游戏(提供源码下载)
  9. Fedora12下播放歌曲 rhythmbox
  10. 孙叫兽:我所认为的领导力!