Я не понимаю, как такие параметры, как <tx:annotation-driven/>
наследуются от корневого контекста (в данном случае тот, который определен applicationContext.xml
) до *-servlet.xml
context
Они не 'т.Эти настройки являются локальными для контекста.
У меня есть component-scan
в обоих этих файлах, чтобы приложение работало.Это нормально?Разве компоненты не дублируются?
Если у вас одинаковая конфигурация component-scan
в каждом контексте, то да, компоненты будут дублироваться.Вы можете указать сканирование только для создания экземпляров компонентов, необходимых для каждого контекста.
Однако компоненты, определенные в applicationContext.xml
, видимы для дочернего контекста, так что выдолжен иметь возможность сохранить компонентное сканирование в родительском контексте и оставить его вне дочернего контекста.Как правило, в контексте сервлета необходимо декларировать только специфичные для MVC вещи, и эти bean-компоненты могут ссылаться на bean-компоненты, определенные в parent.