文章详情页
java - spring boot @Autowired
浏览:328日期:2023-12-22 09:33:31
问题描述
如何在一个没有注解的类中加入一个已经注解的@Autowired?
classA 没有添加xml也没有注解到spring中
classB @Component 已经加入注解
如何在classA 中用@Autowired 注解classB?
如果classA也 @Component了,classB可用,但是不注解就会报错。
问题解答
回答1:做个SpringContextHolder
回答2:@Component 是spring的一个bean类型的注解,添加有这个注解之后才会将该bean由spring管理,如果不加这个注解的话,spring就无法识别这个类,所以就会报错,如果加上这个注解之后spring就知道这两个类是spring中的两个bean,可以相互进行自动注入。 对spring的理解还不够深刻,说的可能有问题,仅仅是个人见解
回答3:从 applicationContext 中用 service 名获取。
回答4:@Autowired是表示注入, 要使用注入, 你的类必须交给spring管理, 意思就是你的class B必须是是一个spring的bean, class A也必须是一个spring的bean, 你报错就是因为你的class A不是一个spring的bean, spring无法帮你注入class B.如果要在不是spring bean的class A中使用class B只能手动把class Bset进去.
标签:
java
相关文章:
1. javascript - sublime左边栏的字体能放大吗?2. 第77行说非对象调用函数fetch()那位大牛解释一下 实在找不到3. javascript - requestAnimationFrame如何控制帧速?4. Python使用mysqldb连接mysql抛出errorclass errorvalue?5. javascript - 请问js(非jq)中如果获取元素的高度精准到小数位6. javascript - webstorm 创建json文件问题7. 安装sublime text 3 控制台的时候出现这个报错怎么办?8. javascript - 有一个异步获取数据的函数A,其他依赖这个A得到的数据的函数是否都必须是异步的?9. javascript - html5多个label中其中一个触发change,如何判断是哪一个出发了change10. (JAVA)最近在做到支付宝的一码多付支付接口,发现没有异步回调通知,需要自己轮询查询订单状态,这个需要怎么实现?
排行榜

网公网安备