powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / spring scope prototype vs. lazy-init
5 сообщений из 5, страница 1 из 1
spring scope prototype vs. lazy-init
    #37739204
sneer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В чем разница между определением scope prototype и lazy-init=true для бина. Я хочу что бы DI происходил когда делается new для обьекта. А не во время старта. Что лучше использовать.
...
Рейтинг: 0 / 0
spring scope prototype vs. lazy-init
    #37739466
sys_daemon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
2.
Ни одного экземпляра класса MyCommand не будет создано при инициализации контекста Spring
<bean class="MyCommand" scope="prototype">


Код: java
1.
2.
// каждый раз выполнение этой строчки приводит к созданию нового экземпляра класса MyCommand 
MyCommand command = context.getBean(MyCommand .class);






Код: xml
1.
2.
Ни одного экземпляра класса MyCommand не будет создано при инициализации контекста Spring
<bean class="MyCommand" lazy-init="true">


Код: java
1.
2.
// первое выполнение этой строки приведёт к созданию нового экземпляра класса MyCommand, все последующие вызовы context.getBean вернут тот же самый объект
MyCommand command = context.getBean(MyCommand .class);






Код: xml
1.
2.
Экземпляр класса MyCommand будет создан сразу при инициализации контекста Spring
<bean class="MyCommand">


Код: java
1.
2.
// каждый раз при выполнении этой строчки кода будем получать один и тот же уже инициализированный объект MyCommand 
MyCommand command = context.getBean(MyCommand .class);



Вариация №4 prototype="true" и lazy-init="false" эквивалентна самому первому варианту то есть просто prototype="true"
...
Рейтинг: 0 / 0
spring scope prototype vs. lazy-init
    #37741128
sneer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sys_daemon,

Огромное спасибо!
...
Рейтинг: 0 / 0
spring scope prototype vs. lazy-init
    #37797594
warloc69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sys_daemon,

а что будет если prototype="true" и lazy-init="true" ?
...
Рейтинг: 0 / 0
spring scope prototype vs. lazy-init
    #37797636
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это перпендикулярный понятия. lazy отвечает за то, когда именно будет создан объект. Если false - он будет создан сразу при загрузке контекста. Если false - в момент запроса бина из контекста.
scope отвечает за то, жизненный цикл объекта. singleton (значение по умолчанию) означает, что в контексте будет только один объект данного бина prototype означает, что для каждого запроса на бин будет создан свой объект.

Т.е. lazy для prototype смысла не имеет.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / spring scope prototype vs. lazy-init
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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