Я новичок в spring, и я создаю простое веб-приложение. Я читал о контекстах в spring MVC.
Я использую плагин STS для eclipse. Я создал Spring Проект MVC с использованием плагина.
Теперь у меня есть три xml-документа в проекте: web.xml, root-context.xml и servlet-context.xml. Они были созданы STS для меня.
-
В web.xml диспетчерский сервлет указывает на servlet-context.xml, и я понимаю, что задача сервлетов диспетчера заключается в создании контекста веб-приложения, который знает, как разрешать представления и является местом для контроллера beans существовать. Правильно ли я понимаю? Если да, то какая другая работа выполняется в этом контексте?
-
Теперь есть файл с именем root-context.xml, который имеет компонентное сканирование на моем проекте по умолчанию. Мое понимание заключается в том, что этот контекст должен иметь глобальный beans, который может использовать множество сервлетов. Правильно ли я понимаю? Что еще это делает? Какой контекст создается с помощью этого файла?
-
Теперь я продолжаю работу над проектом, и у меня есть несколько файлов * -context.xml(dao-context.xml, security-context.xml и т.д.), которые загружаются с помощью contextLoaderListner (в web.xml), Это хорошая идея? Или все должно идти в servlet-context.xml? Я думаю, что неплохо иметь разные контексты, поскольку это разделяет беспокойство. Комментарии? Кроме того, какой контекст создается из этих файлов * -context.xml? Каково правильное расположение папок для этих файлов?
-
Web.xml предназначен для контейнера сервлета, такого как tomcat и т.д., и все остальные файлы xml в проекте предназначены для контейнера spring. Это верно? Все эти файлы разделены, чтобы обеспечить разделение беспокойства?
-
Сколько контекстов приложений и контекстов веб-приложений существует в текущем сценарии?
Зачем кому-то нужно больше одного сервлера диспетчера?
Зачем кому-то нужен более одного контекста приложения?
Мысли? Комментарии? Поправки? Лучшие практики?