Java EE Servlet / фильтр / разность слушателей фазы и порядок обработки - PullRequest
1 голос
/ 22 сентября 2011

Я хочу знать, каков порядок обработки запросов и в чем разница между сервлетом (@WebServlet), фильтром (@WebFilter), слушателями фазы и т. Д.

Эти методы имеют очень похожие заголовки (doGet /doFiler).

1 Ответ

2 голосов
/ 22 сентября 2011

Обработка запроса на фильтрацию, а затем обработка сервлетом описана здесь:

http://download.oracle.com/docs/cd/B32110_01/web.1013/b28959/filters.htm

Таким образом, вы в основном будете использовать сервлет для доставки контента и, возможно, для изменения запроса / ответа с помощью фильтров. Фильтры могут использоваться для реализации труб и фильтров или шаблона проектирования декоратора. (Хотя они могут также доставлять контент самостоятельно и вообще не перенаправлять делегирование на окончательную обработку сервлетом.)

Так много для обработки запросов сервлета. PhaseListeners - это концепция более высокого уровня абстракции. Они относятся не к спецификации сервлета, а к концепциям Java Server Faces, строящим поверх сервлетов. Они могут использоваться для отслеживания фаз, которые проходят компоненты JSF во время запроса, и, следовательно, являются альтернативой для фильтров, когда вы хотите повлиять на поведение / отображение компонентов JSF во время запроса.

Небольшой пример использования фазовых слушателей можно найти здесь: http://www.softwareengineeringsolutions.com/thoughts/frameworks/JSF.Techniques-PhaseListeners.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...