0
XMLファイルからすべてのBeanを一度にプリロードしてからBean名を知らずにループする方法はありますか?私はそれが明らかにプリロードを行うことは可能ですが、特定のBean名を知らなくてもそれらにアクセスする方法は見ていません。ありがとう!Springフレームワーク - 名前を知らずにBeanをプリロードしてループする
XMLファイルからすべてのBeanを一度にプリロードしてからBean名を知らずにループする方法はありますか?私はそれが明らかにプリロードを行うことは可能ですが、特定のBean名を知らなくてもそれらにアクセスする方法は見ていません。ありがとう!Springフレームワーク - 名前を知らずにBeanをプリロードしてループする
XmlBeanFactoryクラスのgetBeanDefinitionNames()を使用できます。 Java Docsから: -
このファクトリで定義されているすべてのBeanの名前を返します。
は、この工場はで参加することができる任意の階層を考慮していない、と はBean定義以外の手段 によって登録されているすべてのシングルトン豆を無視します。
例:
ClassPathResource context = new ClassPathResource("applicationContext.xml");
XmlBeanFactory factory = new XmlBeanFactory(context);
String[] beans = factory.getBeanDefinitionNames();
//loop through beans array to get bean names
for (int i=0; i<beans.length; i++) {
//do your stuff
}
・ホープ、このことができます!
どのような目的のためにそれらをすべて訪問する必要がありますか? – Darien
私はJUnitを使って単体テストを行い、@testメソッドを作成して各Beanのプロパティをテストするのではなく、それらのすべてを熱心にロードし、単一のテストメソッドと並列に実行したいと思います。それは大したことではないが、余分なコードを減らすのはいいだろうし、修正のために閉じられる別のクラスになるだろう。私は近づいている.. –