问题

调用jar包的类,什么时候可以使用 @Autowired直接引入,什么时候需要@Bean注入才能使用呢?

场景

一、需要使用@bean注解的

例如我要使用导入jar包中的RestTemplate这个类,直接引用@Autowired会报错,报的错误是:无法注入,未找到“RestTemplate”类型的bean,意思就是再bean工厂里面没有,所以不能直接引入。如下图

@Configuration:声明一个类为配置类,用于取代bean.xml配置文件注册bean对象。
@Bean:Spring的@Bean注解用于告诉方法,产生一个Bean对象,然后这个Bean对象交给Spring管理。

这个时候我们就要用@Bean注解和@Configuration注入,说白了上面两个注解的作用就是自动把你要用的类注入到bean工厂中,你通过@Bean注入完之后,就可以使用@Autowired直接引入了,也不会报错。如下图

二、使用@Autowired可以直接引入的

当然也有很多jar包里的类不需要@Baen注解,例如DiscoveryClient@Autowired直接引入就可以使用,如下图

三、两者的区别

(1)需要使用@bean注解的

怎么判断使用前是否要用@Bean注入呢,就以上面两个类为例子比较一下,先看没有使用@Bean注入的样子,如下图

这是已经使用@Bean注入完以后的,Navigate to the Spring bean declaration(s) : 注入到Spring bean声明,如下图

(2)使用@Autowired可以直接引入的
再看一下不需要@Bean的类

进来我们就能看到,这个类已经被注入到bean工厂了,所以不需要我们再注入

综合上述你们就点进去看是否有注入的标志就行了,没有你们就注入一下,有就直接用就ok

jar包的类什么时候需要@Bean引入相关推荐

  1. Eclipse插件开发中对于外部Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)...

    目的:Eclipse插件开发中,经常要引用第三方包或者是引用其他插件中的类,由于插件开发环境引用类路径的设置和运行平台引用类路径的设置不同,经常导致开发过程OK,一旦运行则出现NoClassDefFo ...

  2. (转)通过maven,给没有pom文件的jar包生成pom文件,maven项目引入本地jar包

    文章完全转载自 : https://blog.csdn.net/qq_31289187/article/details/81117478 问题一: 经常遇到公司私服或者中央仓库没有的jar包,然后通过 ...

  3. 把接口调用打成jar包的类怎么写_直观讲解RPC调用和HTTP调用的区别

    来源 :浮生忆梦 很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~N ...

  4. eclipse集成tomcat运行web时提示引入jar包的类找不到的解决办法

    在eclipse集成tomcat开发web时,java类引入的jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环境中. ...

  5. Mac下 javac java 进行编译和运行含有包路径及引入jar包的类

    近两天因为刚入职,属于熟悉环境的阶段,研究了下算法(第四版),当不使用IDE工具直接使用终端进行javac 编译带有包的类,然后使用java 会出现如下错误提示: 使用谷歌搜索了很久,终于找到解决的办 ...

  6. Java遍历jar包所有类-后续

    之前,我曾经写过一篇Java遍历包中所有类,但经过一名网友提醒发现,只能适用于项目src中的包,当包在jar里时就无法遍历jar里的类.就此我针对代码进行了细化,功能得到进一步的完善. 在分享源码之前 ...

  7. weblogic 扫描不到jar包的类问题解决方案

    是由于见识的比较少 不知道weblogic jar包使用的是zip协议 偶然发现日志中都是URL [zip:E:/weblogic/user_projects/domains/base_domain/ ...

  8. jar包是什么意思_为什么越来越多的开发者选择使用Spring Boot?

    点击关注上方"Java技术江湖",设为"置顶或星标",第一时间送达技术干货. 本篇是紧接着上一篇展开的,后续也会有一系列关于Spring Boot相关的文章,欢 ...

  9. autowired注入jar中的依赖_springboot项目中调用jar包中的类时报错 — 没有注入类

    使用场景:将一些公共的方法封装成了一个jar包,在其他项目中进行引用的时候报错 报错原因:bean没有注入 因为这两个类没有被@Service,@Repository等类注解,如果我们想用@Autow ...

最新文章

  1. 2019了,互联网研发是不是都快要被淘汰了?
  2. kafka项目启动_Kafka 探险 源码环境搭建
  3. 梯度下降 gradient descent
  4. JAVA HASHMAP 用法
  5. 中文 转gbk编码_go查找中文首字母
  6. 微信小程序 全局共享数据
  7. 【转载更新】Linux工具之SED 2.应用实例
  8. vue 图片自适应排列插件_vue自适应布局3种方法
  9. GO_00:Mac之Item2的配置安装
  10. 学习笔记 十一 : iscsi
  11. ASP.NET Razor 视图引擎编程参考
  12. 201671010127 2016—2017—2 Java学习周结
  13. 保存好用的工具---转载
  14. jspx格式手机打开_zip格式的文件怎么打开,手机和电脑的操作方法一样吗?
  15. 计算机 模板 样式 母版,电脑PPT软件的母版怎么设置
  16. 超星网络学生登录入口 附使用教程
  17. 视频演示 | 功能新增 | 增强版在线LEFSe分析和可视化鉴定标志性基因或物种
  18. Ctrl、Alt、Shift常用的电脑快捷键大全(收藏级)
  19. Linux 命令(186)—— atq 命令
  20. 468、Java框架122 -【Spring + SpringMVC + MyBatis - JSON】 2021.01.27

热门文章

  1. 团队多人协作、研发协作、项目管理、敏捷开发协作平台
  2. python中scrapy可以爬取多少数据_python scrapy框架爬取某站博人传评论数据
  3. H3C防火墙基础配置3-配置对象策略
  4. 智能家居市场中zigbee通信技术与RF315/433通信技术的区别
  5. 千寻位置终端配置参数说明
  6. MicrobiomeAnalyst 文件配置及使用
  7. 人生就是不停的战斗————九把刀北大演讲 转载自豆瓣网友“此间的少年”
  8. POJ 3348 Cows(二维凸包)
  9. HTML标签---列表标签和表格标签
  10. IDEA 更新到 2021.2.3 咋样?【2021.3、2021.3.1看评论区】