java如何在Spring中直接获得最高顺序的bean而不使用注入列表?
有3个类U
,V
,W
实现接口A
,并由具有不同顺序值的Spring的@Order
注释进行注释
我现在通过注入List<A>
然后在List<A>
中搜索第一个元素来获得最高阶bean
有没有更直接的方法可以在不注入整个A
集合的情况下获得最高优先级的bean
你可以在下面搜索框中键入要查询的问题!
有3个类U
,V
,W
实现接口A
,并由具有不同顺序值的Spring的@Order
注释进行注释
我现在通过注入List<A>
然后在List<A>
中搜索第一个元素来获得最高阶bean
有没有更直接的方法可以在不注入整个A
集合的情况下获得最高优先级的bean
# 1 楼答案
据我所知,在春季没有任何方法可以直接获得最高顺序的bean。因此,你的选择是
@HighestOrdered
,并对自己的bean自动连接后处理器进行编码,以仅获取最高顺序的注释(自定义后处理器here的示例)还有其他一些选择
但这两个问题都与你的要求不完全相同,而且都有一些缺点
如果你严格地想做你在问题中提出的事情,我会做你已经在做的事情,然后重复它们,选择最高的顺序
# 2 楼答案
客户端。“a”将分配“U”的实例强>
DefaultListableBeanFactory