Встречается на собеседованиях • сегодня
Как создать ленивый Bean в Spring
В Spring ленивая инициализация бина достигается через аннотацию @Lazy. По умолчанию бины создаются при старте контекста, но с @Lazy инициализация откладывается до первого обращения.
Варианты использования:
- На уровне класса:
java
@Lazy
@Service
public class MyService {
// ...
}- На уровне конфигурации:
java
@Configuration
public class AppConfig {
@Bean
@Lazy
public MyBean myBean() {
return new MyBean();
}
}- При инъекции:
java
@Autowired
@Lazy
private MyService myService;Особенности:
- Для бинов с областью видимости
prototype@Lazyработает всегда - Уменьшает время старта приложения
- Может маскировать проблемы с циклическими зависимостями
- Первое обращение к бину будет медленнее из-за инициализации

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы