Bean の読み込み順序は、依存関係と推移的な依存関係によって暗黙的に決定されるという事実を認識しています。
AwareBean の別のセットに適用したいある種のメタデータを提供するアノテーション付き Bean のセットがあるとします。したがって、N 個の Bean からすべてのメタデータを収集した後でのみ、AwareBean を後処理できます。通常org.springframework.beans.factory.config.BeanPostProcessor
、この種のものに使用します。しかし、注文をどのように処理しますか?depends-on
明示的に設定しても、ロード順序に関して依存関係よりも優先されないと思いますよね?
org.springframework.core.Ordered
適用される beanPostProcessors の順序のみを決定するインターフェースがありますが、 Bean の順序は決定しません。
使用できますorg.springframework.beans.factory.config.BeanFactoryPostProcessor
が、Bean 定義には Bean インスタンス化の前に十分な情報がありません。たとえば、beanDef.getBeanClass()
Bean クラス名などを返します。
それは私がやりたいことをする方法を考えることができる他の方法ですか?