>>分享流行的Java框架以及开源软件,对孙卫琴的《精通Spring》、《Spring Cloud Alibaba微服务开发零基础入门到实操》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 27047 个阅读者 刷新本主题
 * 贴子主题:  Spring 自动注入的三种方式:byName、byType、constructor 回复文章 点赞(0)  收藏  
作者:flybird    发表时间:2020-07-27 09:41:28     消息  查看  搜索  好友  邮件  复制  引用

1 自动注入,分为三种:

<!-- 1.1 根据属性名称自动完成setter注入,类中的属性名和id名称相同则自动完成注入 -->
       <bean id="s"   class="com.zhaoling.dependency.SunWuKong" autowire="byName"></bean>
<!--1.2.根据类中属性的类型,在容器中找到同一类型的唯一组件,完成自动注入-->
       <bean id="s"   class="com.zhaoling.dependency.SunWuKong" autowire="byType"></bean>
<!--1.3.用构造注入完成自动注入,先找构造器中与组件的id相同的,用构造注入完成自动注入;如果没有找到,则找容器中同一类型的唯一组件,用构造注入完成注入.-->
      <bean id="s"   class="com.zhaoling.dependency.SunWuKong" autowire="constructor"></bean>

2.1@Autowired
第一步:在Spring容器中添加启用注解的节点


第二步:在需要注入的属性上面,添加注解@Autowired即可
例如:
@Autowired
private IYaoGuai yg;
该方式是先按照byType到容器中找唯一类型的组件,如果没找到则按byName找和属性名字相同的组件
注解的位置:可以放在setter方法上面,构造函数上面(必须是构造注入),放在属性上面
如果byType找不到唯一,byName找不到同名的组件,可以用注解@Qualifier进行限定到一个组件上,
如:
@Autowired
@Qualifier(“y2”)
private IYaoGuai yg;

2.2 @Resource注解:先按byType,找不到唯一再按byName,如果还找不到可以微调@Resource(name=”y1”),name指定组件的id值
————————————————
原文链接:https://blog.csdn.net/weixin_42117272/article/details/81223276


程序猿的技术大观园:www.javathinker.net
  Java面向对象编程-->按面向对象开发的基础范例
  JavaWeb开发-->JSP技术详解(Ⅱ)
  JSP与Hibernate开发-->持久化层的映射类型
  Java网络编程-->安全网络通信
  精通Spring-->绑定表单
  Vue3开发-->CSS过渡和动画
  Netty权威指南:I/O 多路复用技术
  一篇文章让你彻底了解什么叫Netty!
  SpringMVC下的JUnit4单元测试
  WebFlux 响应式编程初体验
  【项目实践】后端接口统一规范的同时,如何优雅地扩展规范
  Spring Data JPA详解
  开发一个Java项目的基本流程
  浓缩精华的架构演进过程,经验总结,值得收藏!
  Spring Boot 整合 Ehcache
  使用idea和gradle编译spring5源码
  酒店评论数据分析和挖掘-展现数据分析全流程:报告展示篇
  Spring配置日志
  Spring Boot整合WebSocket及Spring Security实例
  Spring AOP的本质
  分布式架构知识体系
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。