gpt4 book ai didi

java - 有没有办法获取通过@Autowired注入(inject)的具有范围原型(prototype)的所有bean?

转载 作者:行者123 更新时间:2023-12-01 15:11:17 26 4
gpt4 key购买 nike

使用@Autowired注入(inject)范围prototype的bean通常无法按预期工作。但在编写代码时,很容易意外注入(inject)原型(prototype)。

有没有办法获取所有@Autowired字段和方法的列表,并将其与Spring AppContext相匹配来检查这一点?

最佳答案

一种方法可能是覆盖org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor(负责处理@Autowired,@Inject,@Resource等)并执行您所拥有的检查在这个重写的bean后处理器中提到。然而,AutowiredAnnotationBeanPostProcessor 注册了很多常见的自定义命名空间(context:component-scancontext:annotation-config 等),因此这些自定义注释必须被替换为相应的 bean 变体,并且覆盖的后处理器也注册为 bean。

关于java - 有没有办法获取通过@Autowired注入(inject)的具有范围原型(prototype)的所有bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12317675/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com