Spring Framework - Предварительная загрузка bean-компонентов и их прохождение без знания имен - PullRequest
0 голосов
/ 03 августа 2011

Есть ли способ, которым я могу предварительно загрузить все bean-компоненты из XML-файла сразу, а затем просмотреть их, не зная их имен?Я видел, что, очевидно, можно выполнить предварительную загрузку, но я не видел способа получить к ним доступ, не зная их конкретных имен бинов.Спасибо!

1 Ответ

0 голосов
/ 03 августа 2011

Вы можете использовать getBeanDefinitionNames () из класса XmlBeanFactory .Из 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
}

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...