>>分享流行的Java框架以及开源软件,对孙卫琴的《精通Spring》、《Spring Cloud Alibaba微服务开发零基础入门到实操》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 24962 个阅读者 刷新本主题
 * 贴子主题:  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网络编程-->Java网络编程入门
  精通Spring-->
  Vue3开发-->Vue指令
  NIO的几道常见面试题
  VSCode插件的高级用法
  循序渐进,阿里架构师看完都赞叹的Redis分布式锁原理分析
  Spring事务容易掉入的坑
  Spring事务的声明和管理
  springmvc处理异步请求的示例
  Spring MVC处理静态资源文件的方式
  【项目实践】有了SpringBoot还有必要学SSM整合吗 - RudeCrab...
  Spring MVC处理异步请求
  深入Redis客户端(redis客户端属性、redis缓冲区、关闭redis客...
  中央厨房订单管理系统,引入ActiveMQ消息队列,平滑处理高峰...
  写给新手的Spring Cloud的微服务入门教程
  Spring Framework 组件注册 之 @Import
  springmvc+ajax异步上传图片
  MyBatis解析和运行原理
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


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