Встречается на собеседованиях • сегодня

В чем различие конфигурации основанной на аннотациях и на коде

Конфигурация на аннотациях использует метаданные (например, @Component, @Autowired), которые добавляются прямо в классы. Это удобно, лаконично и минимизирует boilerplate-код. Пример:

java
@Service
public class UserService {
    @Autowired
    private UserRepository repository;
}

Конфигурация на коде (например, через @Bean методы или XML) явно описывает зависимости в конфигурационных классах. Это дает больше контроля и гибкости, особенно для сторонних библиотек. Пример:

java
@Configuration
public class AppConfig {
    @Bean
    public UserService userService(UserRepository repository) {
        return new UserService(repository);
    }
}

Ключевые отличия:

  • Аннотации удобны для быстрой разработки, но менее гибки.
  • Кодовая конфигурация прозрачнее и позволяет тонкую настройку, но требует больше кода.
  • Аннотации могут "загрязнять" бизнес-логику, кодовая конфигурация отделяет конфигурацию от реализации.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы