Является ли @Bean внутри @Component синглтоном? - PullRequest
0 голосов
/ 25 июня 2019

В некоторых местах я читал, что разница между @Bean внутри @Component и @configuration, если последний предоставляет одноэлементный компонент, а первый - нет.Кто-нибудь может подтвердить, правда это или нет?

Ответы [ 2 ]

0 голосов
/ 25 июня 2019

При использовании @Configuration аннотированных классов они обрабатываются в режиме full , что означает, что класс читается с использованием ASM, расширенного с помощью CGLIB, так что вызовы методов inter возвращают один и тот же экземпляр.

Использование @Component для объявления bean-компонентов, которые обрабатываются в режиме lite . Не допускается использование ссылок на метод inter (вы можете сделать это, но каждый вызов создаст новый bean-компонент).

См. Также этот раздел в справочном руководстве Spring, в котором это объясняется очень подробно.

0 голосов
/ 25 июня 2019

Пожалуйста, укажите значение синглтона в вашем вопросе.Фактически, в мире Spring SINGLETON является областью действия по умолчанию для компонента, и не имеет значения, где компонент, определенный в Компоненте или Конфигурации, его областью действия будет SINGLETON, но его можно переопределить, указав атрибут аннотации @Bean.Бины, определенные в Конфигурации, имеют некоторые ограничения.Более подробную информацию вы можете найти здесь: https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Bean.html

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