Я пишу веб-приложение Spring в Eclipse. В WEB-INF у меня есть файл web.xml, который дает отображение сервлета для файла myapp-servlet.xml.
В myapp-servlet.xml у меня есть компонент для контроллера страницы. Я предполагаю, что Spring DispatcherServlet создает экземпляры этих компонентов из своего собственного ApplicationContext. Когда я запускаю свой проект в качестве сервера, он отображает файл index.jsp - «привет, привет, привет».
Теперь я также предполагаю, что если бы я поместил кнопку отправки, которая отправляет данные поста в этот файл index.jsp, мой контроллер страницы был бы уведомлен о запросе HTTP. Однако как я могу взаимодействовать с остальной частью моего приложения (бизнес-уровнем) из контроллера страницы? Я пишу приложение LDAP Directory Lookup, и как только пользователь вводит имя, я хочу вернуть электронное письмо , Поэтому, когда пользователь вводит имя и нажимает «Отправить», я хочу связаться с моим бизнес-уровнем LDAP. Как я могу это сделать?
Один из способов сделать это - добавить свои бизнес-объекты в качестве свойств в контроллер страницы в файле myapp-servlet.xml. Однако, мне кажется, что это слишком сильно интегрирует бизнес-уровень и контроллеры - это означает, что каждому контроллеру потребуются свойства для бизнес-объектов.
Другой способ, которым я думал об этом, - создать некую фабрику, которую все контроллеры перечислили как свойство в своем XML. Через эту фабрику контроллеры могут получить доступ к бизнес-объектам; фабрика - это интерфейс между двумя слоями.
Это обе нестандартные идеи, и я подозреваю, что есть готовое решение. Есть ли уже способ пойти по этому поводу? (Интеграция бизнес-уровня со слоем контроллера веб / страниц?) Или программист сам должен придумать собственное решение, как я обрисовал выше?
Спасибо, (и извините за длинный вопрос - отсюда жирный)
КТМ