Шаблон Front Controller в Java: централизованная обработка запросов

Вся суть паттерна Front Controller в том, что все запросы обрабатываются централизовано через одно место.

То есть любой запрос сначала идет в Front Controller, далее Front Controller определяет в какой другой обработчик или View перенаправить запрос и, собственно, перенаправляет.

Приведем пример сервлета, который будет играть роль Front Controller-а, который принимает запросы и форвардит через RequestDispatcher на какую-то вьюху.

import java.util.*; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.annotation.*;; @WebServlet(“/FrontControllerServlet”) public class FrontControllerServlet extends HttpServlet { protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //Пусть Front Controller проверяет присланные //POST запросом в него параметры и если они //соответствуют тому что в equals то Front Controller //перенаправляет отправившего запрос //на страницу SomePasswordValue, также и сам запрос(req) //туда перенаправляться с помощью forward. if (req.getParameter(“password”).equals(“JohnSmith”) && req.getParameter(“login”).equals(“SomePasswordValue”)) { RequestDispatcher rd= req.getRequestDispatcher(“/welcomePage.jsp”); rd.forward(req, resp); } //в ином случае на страницу errorPage else { RequestDispatcher rd= req.getRequestDispatcher(“/errorPage.jsp”); rd.forward(req, resp); } } }

Шаблон Template: поведение по умолчанию

Узнайте, как паттерн Template задает скелет алгоритма в Java. Абстрактный класс определяет последовательность шагов, позволяя подклассам переопределять этапы.
Time to read: 14

Что такое Spring Framework и зачем он нужен

Spring Framework: основы DI и IoC. Узнайте, как работать с бинами, BeanFactory и XML-конфигурацией на примере.
Time to read: 20

Внедрение зависимостей с помощью сеттера.

Изучите внедрение зависимостей в Spring через сеттеры. Практический гайд по DI с примерами кода Java и XML-конфигурации.
Time to read: 17