【Spring】基于xml文件的Autowire自动装配
一、什么是自动装配
根据指定的策略,在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自动装配相关推荐
- Spring基础——在 Spring Config 文件中基于 XML 的 Bean 的自动装配
一.Spring IOC 容器支持自动装配 Bean,所谓自动装配是指,不需要通过 <property> 或 <constructor-arg> 为 Bean 的属性注入值的过 ...
- java spring bean配置文件_Spring基于xml文件配置Bean过程详解
这篇文章主要介绍了spring基于xml文件配置Bean过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 通过全类名来配置: class:be ...
- autowire自动装配
autowire自动装配 autowire自动装配 auto自动装配就是在要使用bean的时候进行自动注入 !注意! :自动注入只能注入引用数据类型和自定义类,其中基础数据类型和String数据类型不 ...
- Spring autowire 自动装配简介
Spring autowire 自动装配简介 注意本文与一般spring 标注@Autowire 无关 如下例子定义了3个类 Dperson Dcar & Daddress 其中Dperson ...
- Spring基于XML装配Bean
Bean 的装配可以理解为依赖关系注入,Bean 的装配方式也就是 Bean 的依赖注入方式.Spring 容器支持多种形式的 Bean 的装配方式,如基于 XML 的 Bean 装配.基于 Anno ...
- Spring Autowire自动装配(转http://lep1985520.blog.163.com/blog/static/56600480200901441338486/)
Spring Autowire自动装配 技术收藏 2009-01-14 16:13:38 阅读284 评论0 字号:大中小 订阅 Spring Autowire自动装配 在应用中,我们常常使用 ...
- Spring Autowire自动装配 ---残梦追月原创
在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象.但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的< ...
- Spring Autowire自动装配介绍
在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象.但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的< ...
- Spring Autowire自动装配
1.在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象,同时也Spring为我们提供了一个自动装配的机制,在定义Bean时,<bean>标签有一个autow ...
最新文章
- 被人恨,但感觉不错!
- 飞天大数据平台助力轻松筹数字化运营
- ServiceMash服务网格--理解lstio/envoy
- Flink : The object probably contains or references non-serializable fields.
- List 去除重复数据的 5 种正确姿势!
- 详细讲解大型数据库的设计原则与开发技巧
- JAVA万能:JNLP在浏览器上以WEB方式运行JAVA程序
- 兆能Z82机顶盒-卡刷-刷机固件
- 大数据 (016)Hadoop-MR编程 -- 【使用hadoop计算微博用户可能喜欢的关键词----编程】
- 企业微信发送信息异常的临时处理方案
- 我的个人博客网站是怎么制作的?
- 通过网页链接直接下载APK
- word2vec python实现
- 2018ACM-ICPC焦作站 补题
- 虚拟化存储和非虚拟化存储
- C#如何将汉字转换成拼音
- 转载:浅谈Session与Cookie的区别与联系
- 战地3皓月服务器win10系统,战地3配置
- 古诺双寡头模型MATLAB求解(博弈论)
- 小众爱好之滑翔伞运动
热门文章
- php的filetype,PHP filetype( )用法及代码示例
- 大班音乐机器人反思_大班音乐活动机器人教案反思
- 合肥工业大学计算机组成原理实验报告
- 计算机科学投稿初审被增刊,科学网—投稿过程中的困惑:增刊 - 张晓锋的博文...
- vue项目中由于eslint检查太严谨而报错的bug,怎么解决删除eslint
- 看各大安全厂商对等保2.0的应对措施及解决方案
- js实现案例全选全不选(超详细)
- 一款C/C++经典的益智3D卡通推箱子游戏(提供源码下载)
- Fedora12下播放歌曲 rhythmbox
- 孙叫兽:我所认为的领导力!