簡體   English   中英

使用Spring方法獲取給定類型的所有bean

[英]Spring method to get all beans of a given type

我試圖從FileSystemXmlApplicationContext獲取所有相同類型的bean。

我使用的是factory.getBeansOfType(SomeType.class)但我注意到它僅返回頂級bean,還有其他方法可以返回給定類型的所有bean,甚至是嵌套bean嗎?

用法示例:

<bean name="topLevelBean" class="SomeClass">
    <property name="someProperty">
         <bean bean="nestedBean" class="SomeClass">
    </property>
</bean>

調用factory.getBeansOfType(SomeClass.class)僅返回topLevelBean ,而不返回nestedBean

getBeansOfType文檔說,它僅返回頂級bean。

我的問題是:是否有任何方法可以返回所需類型的所有bean。

我可以通過實現BeanPostProcessor接口並將其添加到spring上下文文件中來訪問所有bean。

我不確定,但BeanFactoryUtils#beansOfTypeIn includedAncestors()可能會返回那些(文檔未說明 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM