Встречается на собеседованиях • сегодня
Как изменить бин перед инициализацией
В Spring можно изменить бин перед инициализацией с помощью BeanPostProcessor. Это специальный интерфейс, который позволяет модифицировать бины до/после их инициализации.
Пример:
java
@Component
public class CustomBeanPostProcessor implements BeanPostProcessor {
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) {
if (bean instanceof SomeService) {
// Модификация бина перед init-методом
((SomeService) bean).setSomeProperty("customValue");
}
return bean;
}
}Ключевые моменты:
postProcessBeforeInitialization()вызывается после внедрения зависимостей, но до@PostConstructиinit-method.- Можно фильтровать бины по имени (
beanName) или типу (instanceof). - Всегда возвращайте модифицированный (или исходный) бин.
Альтернативно можно использовать @PostConstruct, но он работает после внедрения зависимостей.

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