<bean factory-method=“”> имеет приоритет выполнения?

284
02 августа 2017, 19:57

Добрый вечер!

Разбираюсь с Spring и столкнулся с непониманием ситуации. Объясните пожалуйста, почему при использовании аннотации factory-method в bean этот bean запускается первым?

Вот пример XML:

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd"
       default-init-method="turnOnLights"
       default-destroy-method="turnOffLights">
    <bean id="duke" class="springidol.impl.Juggler">
        <constructor-arg value="15"/>
    </bean>
    <bean id="poeticDuke" class="springidol.impl.PoeticJuggler">
        <constructor-arg value="15"/>
        <constructor-arg ref="sonnet29"/>
    </bean>
    <bean id="sonnet29" class="springidol.impl.Sonnet29"/>
    <bean id="theStage"
          class="springidol.Stage"
          factory-method="getInstance"/>
    <bean id="auditorium" class="springidol.Auditorium"/>
</beans>

Вот класс с созданием бинов:

public class SpringIdolMain {
    public static void main(String[] args) {
        ApplicationContext context
                = new ClassPathXmlApplicationContext("spring-idol.xml");
        Performer jungler = (Performer) context.getBean("poeticDuke");
        try {
            jungler.perform();
        } catch (PerformanceException e) {
            e.printStackTrace();
        }
        Auditorium auditorium = (Auditorium) context.getBean("auditorium");
        ((ConfigurableApplicationContext) context).close();
    }
}

Вот вывод на консоль:

STAGE CREATED
LIGHTS ON
JUGGLING 15 BeanBAGS
While reciting.. 
LIGHTS OFF

Почему STAGE CREATED идет первым? Если закомментить данный бин в XML и запустить программу по новой, то ошибок не будет.

READ ALSO
Можно ли изменить направление recyclerview?

Можно ли изменить направление recyclerview?

Стандартное направление recyclerview это сверху-внизТ

267
Почему не открывается JDBC postgresql connection?

Почему не открывается JDBC postgresql connection?

Приложение развернуто на HEROKUТам добавил в окружение HEROKU-POSTGRESQL версия 9

430
Как делать вставку JSON данных в Postgres?

Как делать вставку JSON данных в Postgres?

Есть объект Phrase который имеет поле представленное как JSON объект, но при попытке записать его в колонку с соответствующим типом падает:

407
Получение значений в столбце JTable

Получение значений в столбце JTable

Существует JTable с 3 столбцами и 100 строкамиНужно по событию на таблице узнать какие данные лежат во втором столбце, т

286