powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Autowired bean is null
43 сообщений из 43, показаны все 2 страниц
Autowired bean is null
    #39996448
Molasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Почему объект testBean равен null в методе ExecutorListener.contextInitialized()?

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
@Service
public class TestBean {

    private String name;
    
    @PostConstruct
    private void init() {
        this.name = "My name";
    }

    public String getName() {
        return name;
    }
    
}


Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
@WebListener
public class ExecutorListener implements ServletContextListener {

    @Autowired
    private TestBean testBean;

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
    }

    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println(testBean.getName());
    }

}



автор08-Sep-2020 10:05:31.829 SEVERE [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [com.example.beantester.ExecutorListener]
java.lang.NullPointerException
at com.example.beantester.ExecutorListener.contextInitialized(ExecutorListener.java:24)
...
Рейтинг: 0 / 0
Autowired bean is null
    #39996460
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,
Потому что autowired не сделался. По моему TestBean можно засунуть агрументом в метод и сделать его @AutoWired, но это - не точно.
...
Рейтинг: 0 / 0
Autowired bean is null
    #39996469
Molasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы сработал @Autowired, нужно сделать вот так:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        WebApplicationContextUtils
            .getRequiredWebApplicationContext(sce.getServletContext())
            .getAutowireCapableBeanFactory()
            .autowireBean(this);

        System.out.println(testBean.getName());
    }
...
Рейтинг: 0 / 0
Autowired bean is null
    #39996504
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,

Потому что JavaEE/JakartaEE можно засунуть в Spring, а наоборот нужно извратиться. :-)

Сделайте свой бин TestBin бином JavaEE/JakartaEE.
Аннотации @Statefull, @Stateless, @Singlton. Обращаться через @Inject ( а не @Autowired)

Ну или используйте только Spring :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40014736
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похожая ситуация
Это работает
Код: java
1.
2.
3.
4.
5.
@Controller
public class UserController {

    @Autowired
    ServiceUserDB serviceUserDB;



А это нет, объект NULL
Код: java
1.
2.
3.
4.
5.
@Component
public class SecurityHandler implements AuthenticationSuccessHandler {

    @Autowired
    ServiceUserDB serviceUserDB;



Все дело в наследовании или в @Controller и @Component?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40014784
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008
Похожая ситуация
...
Все дело в наследовании или в @Controller и @Component?


А если попробовать не через аннотацию @Controller, а через класс @Сonfig и @Bean ?

И инжекцию сделать через конструктор, а не через поле.

Хотя вообще-то странно.
По идее @Component должен при загрузку приложения падать (ну или в логах ругнуться).
С ошибкой создания бина.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015011
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
А если попробовать не через аннотацию @Controller, а через класс @Сonfig и @Bean ? И инжекцию сделать через конструктор, а не через поле.

Хочется чтобы все было в едином стиле.
И чисто академически интересует этот вопрос - почему в одном месте работает, а в другом нет?
Чего я не понимаю?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015076
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008,

А каким образом securityHandler создаётся?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015136
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008
mad_nazgul
А если попробовать не через аннотацию @Controller, а через класс @Сonfig и @Bean ? И инжекцию сделать через конструктор, а не через поле.

Хочется чтобы все было в едином стиле.
И чисто академически интересует этот вопрос - почему в одном месте работает, а в другом нет?
Чего я не понимаю?


Чтобы понять, нужно глубоко разбираться в жизненном цикле бинов.
И там есть куча неоднозначного поведения, в зависимости от того как создаются бины.

Т.к. по двум классам нельзя понять как поднимается Spring-context, то сказать почему - не возможно.


Пока посмотрите как создается бин SecurityHandler и где он используется.

А так рекомендую мигрировать с аннотаций, на @Config клаассы и инжекцию через конструктор.

1) Легче будет писать Unit-тесты, без поднятия всего контекста
2) Вся "грязь" будет в специально отведенном загончике
3) Можно будет отлаживать поднятие контекста
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015147
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
есть куча неоднозначного поведения, в зависимости от того как создаются бины.
именно. И это есть декларативное программирование вместо obj = new Class.
Свои плюсыминусы
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015268
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch
SQL2008,

А каким образом securityHandler создаётся?


В application-context.xml
Код: java
1.
2.
 <bean id="myAuthenticationSuccessHandler"
          class="bla.bla.bla.SecurityHandler" />



А потом прописывается в security-config.xml
Код: java
1.
2.
3.
4.
5.
<form-login login-page="/login.html" authentication-success-handler-ref="myAuthenticationSuccessHandler"
                    username-parameter="username"
                    password-parameter="password"
                    login-processing-url="/j_spring_security_check"
                    authentication-failure-url="/login.html?error=true" />



Причем все работает, управление после успешной авторизации получает.
Но внутри не могу связать bean
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015282
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79
а зачем ты ставишь компонент над классом который ты уже записал в бины ,причем с другим названием в контекст

Удаление @Component никак не повлияло, также не работает!
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015286
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79, не биндится объект, остается NULL
Код: java
1.
2.
    @Autowired
    ServiceUserDB serviceUserDB;
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015288
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Взял пример отсюда
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015295
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79
а вот убери ты из контекста его и там сразу заработает)

Ещё раз для тех кто с бронепоезда - что нужно сделать?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015300
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79, почему в другом классе работает?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015304
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79, спрошу по другому.
Я правильно понимаю, что @Autowired это типа ссылка (+конструктор) на некий общий объект?
Можно-ли использовать его из разных классов?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015399
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79
в твоем случае у тебя изначально два бина одного класса с разными Id
используется тот ,что ты запихал в хмл
а то что у тебя в коде там прописано спрингу пофиг если не указана анотайшн бейсед конфиг

Это мне нужно осмыслить.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015400
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008

В application-context.xml
Код: java
1.
2.
 <bean id="myAuthenticationSuccessHandler"
          class="bla.bla.bla.SecurityHandler" />



Причем все работает, управление после успешной авторизации получает.
Но внутри не могу связать bean


Ну дык правильно!
Вы его в xml-конфиге не заинжектили!

Надо так:

Код: java
1.
2.
3.
4.
 <bean id="myAuthenticationSuccessHandler"
          class="bla.bla.bla.SecurityHandler" >
        <property name="testBean" value="testBinRef" />
</bean>



P.S.используйте один стиль описания/создания бинов.
Если используете xml-конфиги, то создавайте бины только там, без аннотаций .
Если используете аннотации, то не создавайте бины в xml-конфиге.
В противном случае будете много времени тратить на танцы с бубном вокруг spring-context'а
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015417
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul

Надо так:

Код: java
1.
2.
3.
4.
 <bean id="myAuthenticationSuccessHandler"
          class="bla.bla.bla.SecurityHandler" >
        <property name="testBean" value="testBinRef" />
</bean>



И обратно не понимаю!
Вот весь мой класс
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public class SecurityHandler implements AuthenticationSuccessHandler {

    @Autowired
    ServiceUserDB serviceUserDB;

    public void onAuthenticationSuccess(HttpServletRequest request,   HttpServletResponse response, Authentication authentication) throws IOException  {
        Set<String> roles = AuthorityUtils.authorityListToSet(authentication.getAuthorities());
        String email = ((UserDetails)authentication.getPrincipal()).getUsername();
        Session.userDetail = serviceUserDB.gelUserDetail(email);
        response.sendRedirect("index.html");
    }
}



Какое проперти я должен тут устанавливать, если их нет в принципе?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015422
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008

Какое проперти я должен тут устанавливать, если их нет в принципе?


Как нет?!
А

Код: java
1.
2.
@Autowired
    ServiceUserDB serviceUserDB;



Это что?

Сейчас у вас в приложении вы создали бин, но свойства в него не заинжектили.

Если вы создаёте бин через xml, то нужные проперти вы должны прямо указать, что в них положить.
Если через аннотации, то, да - там магия. Spring сам анйдет и заинжектит что надо.

Поэтому или штаны оденьте, или крестик снимите.

Т.е. создавайте бины или через xml, или через аннотации.

А так (скорее всего) у вас в контексте два бина.
Первый который создался в xml без инициализированного проперти, а второй, который создался через аннотации с инициализированным проперти.

Причем в "form login" вы используете бин который создали в xml.

Так что либо "не думаете" и инициализируете проперти в xml, либо учите жизненный цикл бинов до полного простветления. :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40015526
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul, спасибо за потраченное на меня время!
Если смогу чем-то быть полезен, то с радостью помогу.
Теперь по теме
Перевести все в аннотации не получилось, сделал через XML.

Так что либо "не думаете" и инициализируете проперти в xml, либо учите жизненный цикл бинов до полного просветления. :-)
Пока пошел первым способом, но со вторым мне нужно тоже определяться.
Еще раз спасибо!
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016181
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79,
Сразу на спринг бут нельзя переходить. Это бейсик.
Вы тут с аннотациями сначала закончите.
Чем плохи аннотации?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016365
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Zzz79,
Сразу на спринг бут нельзя переходить. Это бейсик.
Вы тут с аннотациями сначала закончите.
Чем плохи аннотации?


Аннотации это хорошо.
Правда когда сделано так:

Код: java
1.
2.
3.
4.
5.
6.
7.
@Component
public class foo {

   @Autowired
   private Bar bar;

}



Писать простые unit-тесты становиться затруднительно.
Нужно либо мокать через Mockito, либо поднимать контекст.

Ну как бы не удобно.

Если делать инжекцию, через конструктор, там свои неудобства, зато unit-тесты проще писать.

ИМХО самый "идеологически правильный" это конфигурация через классы.

Можно конфигурацию и классы с бизнес логикой разнести по разным модулям.
С конфигурацией через аннотации мы привязываемся к Spring'у.

А через классы или xml, можно конфигурацию и бизнес-логику разнести.
Но xml это дно. Поэтому конфигурационные классы. :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016415
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79
mad_nazgul,
мое имхо -юнит тесты это юзлесс куета для того чтобы списать время разраба и чтобы бизнес платил больше вот и все
никакой смысловой и иной нагрузки они не несут ибо пишутся по существующему коду, и могут свалиться если кто то где то забыл что то поменять при изменениях в коде,что собственно и так мгновенно обнаружится при тестировании
соотвственно я считаю это бесполезной тратой денег
Ну и собственно люди которые считают деньги обходятся без этого искуственного г0вна,а гос корпорации там и так все понятно)
Я работал с начала карьеры на гос банк и там без юнит теста твой код даже смотреть никто не будет,а сейчас в частной конторе- зашел а папку тест там 0))ибо нах оно надо )


"Вы просто не умеете их готовить". ;-)

Вообще приобретать навык написания unit-тестов нужно уже сейчас.
Т.к. с приходом DevOps-практик и прочих аджайлов, всё больше кода будет тестировать приложения.
Т.е. мануального тестирования будет всё меньше и меньше.
И требования к коду будет, чтобы он был тестируемым.

Т.к. любые интеграционные тесты хрупки by default.
То упор таки будет на unit-тесты.
Которые позволяют протестировать хоть что-то, при этом изменения в коде не будут красить все тесты в красное, если не был изменен интерфейс.

И лет через 5-6 код без unit-тестов будет считаться говнокодом.

Так что начать тренироваться надо сейчас.
Чтобы потом на собеседованиях и код-ревью не краснеть.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016417
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79
mad_nazgul


Поэтому конфигурационные классы. :-)

для того чтобы определить бины не нужны никакие конфигурационнные классы- это прошлый век)


С точностью до наоборот.

Сейчас "генеральная линия партии" в Spring это конфигурационные файлы.
Аннотации, как и xml оставлены для совместимости.

Сейчас даже контроллеры (@Conroller, @restController) рекомендуют описывать в конфигурационных файлах в виде бина.

На Java это не так сильно акцентрованно. А вот примерах на Kotlin очень даже.

Уже до тестов добрались.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016419
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
И лет через 5-6 код без unit-тестов будет считаться говнокодом.
угу. Уже 20 лет тесты не приоритет и ничего.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016420
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
@restController) рекомендуют описывать в конфигурационных файлах в виде бина.
пример дайте
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016488
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul
@restController) рекомендуют описывать в конфигурационных файлах в виде бина.
пример дайте


Пример :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016489
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul
И лет через 5-6 код без unit-тестов будет считаться говнокодом.
угу. Уже 20 лет тесты не приоритет и ничего.


Ну больше 20 лет микросервисная архитектура была не в приоритете.
Однако сейчас всё немного по другому.

Как бы распространение микросеврисно архитектуры и практик DevOps, приведет к повальному внедрению unit-тестов.
Просто если без них, то "фигак-фигак и в продакшен не получится". :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016492
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79

не знаю как в котлинах,на джава это анахронизм
тесты это хорошо,когда больше делать нечего- ну чтобы работники не просто так зп получали,другого смысла они не несут от слова вообще.Вот интеграционные худо бедно хоть что то показывают,хотя опять же это все синтетика.


То же самое можно сказать про любую новую технологию программирования.
Я ещё застал холивары ООП vs ПП.
Как говориться "рыночек порешал".
ООП сейчас везде.

Так же и с unit-тестированием.
Рынок решит.
Что дешевле лежащий прод и/или потеря всех данных.
Или затраченное время программистов на написание unit-тестов.

<:o)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016493
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Я не просил пример с реактом.
Микросервисы тут делают 1,5 чела. И будут делать столько же.
Все топики проблемные без решения и в конце авторы исчезают)))) LOL
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016722
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Я не просил пример с реактом.


Я говорил, про "генеральную линию партии".
А сейчас она как раз направленна на реактивность во все дыры.

Если сейчас почитать документацию Spring, там до сих пор про xml-конфиги пишут.
Это не значит, что xml-конфиги как-то развиваются и продвигаются.
Это легаси, которое поддерживают.

PetroNotC Sharp

Микросервисы тут делают 1,5 чела. И будут делать столько же.
Все топики проблемные без решения и в конце авторы исчезают)))) LOL


Так правильно, сложность микросеврисов она на абстракцию повыше.
Т.е. сложность не написать, а спроектировать доменную модель.
Этим занимаются от уровня сеньер и выше.

А тут вопросы больше "технические".
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016734
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
А сейчас она как раз направленна на реактивность во все дыры.
бла бла бла. Сетевой маркетинг.
Ты одиночка в микросервисах и в реактивности.
Спрашиваешь про одно а ты впариваешь другое.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016774
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul
А сейчас она как раз направленна на реактивность во все дыры.
бла бла бла. Сетевой маркетинг.
Ты одиночка в микросервисах и в реактивности.
Спрашиваешь про одно а ты впариваешь другое.


Да и что я спрашивал? :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40016775
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Ты сказал что конфигурирование java лучше БЕССПОРНО конфигурированием аннотациями.
Я сказал докажи.
Не люблю максималистов. Меня аннотации устраивают.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017014
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Ты сказал что конфигурирование java лучше БЕССПОРНО конфигурированием аннотациями.
Я сказал докажи.
Не люблю максималистов. Меня аннотации устраивают.


Я сказал не "бесспорно правильно", а "идеологически правильно".

Как бы реальность и идеология немного разные вещи. ;-)

И всё ещё жду конкретно что я спрашивал. :-)
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017016
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Ты бы хоть вики открыл прежде чем спорить
авторИдеология — не наука, хотя она может опираться на научные знания. В отличие от науки идеология, как выражение частных интересов в форме всеобщности, представляет собой знание о социально-политической жизни по отношению к интересам составляющих её сил, задавая на этой основе оценку желательности или нежелательности того или иного социального бытия[1].
Теперь понятно почему ты фанат микросервисов.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017017
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
И всё ещё жду конкретно что я спрашивал. :-)
у иделогов парторгов в профиле ни одного вопроса. Они расстреливают не сомневаясь в идеологически правильной линии партии.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017062
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подолью маслица в огонь...
Одно из достоинств XML-конфигурации это то, что параметры можно спокойно поменять после компиляции программы. Например настройки почтового сервера или подключения к базе.
В случае же Java-конфигурации после изменения приходится перекомпилировать проект, ибо все захардкожено.
Или я не прав?
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017067
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008,
Прав.
Но минус что портянки большие.
И мне удобнее связь классов сразу смотреть. В коде.
Мы же не конфигурасты 1С.
Поэтому в цепочке
XML - > Аннотации - > Java config
Я посередине))
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017068
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008
маслица в огонь...
огонь бывает когда максималисты приходят. Я не.
...
Рейтинг: 0 / 0
Autowired bean is null
    #40017383
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008

Одно из достоинств XML-конфигурации это то, что параметры можно спокойно поменять после компиляции программы. Например настройки почтового сервера или подключения к базе.
В случае же Java-конфигурации после изменения приходится перекомпилировать проект, ибо все захардкожено.
Или я не прав?

То что там якобы тренд писать конфигурации на жаве - оно скорее всего подразумевало либо бут, либо IaC. В чем там идеология заключается нихрена непонятно, т.е. если взять тот же бут и внимательно на него посмотреть, то невооруженным взглядом будет заметно, что на более-менее развесистые конфигурации он совершенно не заточен: ну вот если вам внезапно понадобилось сконфигурировать в приложении несколько JPA-провайдеров (две кафки, две монги, чего угодно две), то с евойным стартерами придется обломаться, а придется делать одно из:
- писать свой стартер (но мы то все знаем какой треш и угар в спринговых конфигурациях творится)
- забить на стартер и хардкодить в жаве названия пропертей (приложение же должно в разных средах запускаться)
- взять старый добрый xml и с первого раза сделать все по-человечески
...
Рейтинг: 0 / 0
43 сообщений из 43, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Autowired bean is null
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]