Встречается на собеседованиях • сегодня
Зачем нужен @PostConstruct
@PostConstruct — аннотация, указывающая, что метод должен быть выполнен после внедрения зависимостей (DI) и перед использованием бина. Это аналог конструктора, но с гарантией, что все зависимости уже проинициализированы.
Пример:
java
import javax.annotation.PostConstruct;
public class DatabaseService {
private String connectionUrl;
text
@PostConstruct
public void init() {
System.out.println("Initializing connection: " + connectionUrl);
}
public void setConnectionUrl(String url) {
this.connectionUrl = url;
}}
text
**Когда использовать:**
- Инициализация ресурсов (например, подключение к БД).
- Проверка корректности зависимостей.
- Запуск фоновых задач.
⚠️ **Важно:**
- Метод должен быть `void` и без параметров.
- Не вызывается, если бин создан вручную (без DI).
- В Spring 3+ можно использовать `InitializingBean`, но `@PostConstruct` — более стандартный вариант (JSR-250).
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы