Фильтры похожи на сервлеты. Существует много контейнеров сервлетов. Фильтры играют роль только в контейнере сервлетов?

Я читаю каждый раз, когда фильтры похожи на сервлеты. Resin — это контейнер сервлетов. Существует ли какой-либо контейнер фильтра для инициализации фильтров или он играет роль только в контейнере сервлета. Кто-нибудь может уточнить, как это работает?


person giri    schedule 06.01.2010    source источник


Ответы (3)


  • Сервлеты — это компоненты, которые обрабатывают цикл запроса/ответа HTTP.
  • Фильтры — это компоненты, которые перехватывают HTTP-запросы и отвечают на них до или после того, как они достигнут целевого сервлета.
  • Контейнеры сервлетов обеспечивают работу двух вышеуказанных пунктов, то есть они создают экземпляры сервлетов и фильтров и «отдают» им запросы/ответы.
person Bozho    schedule 06.01.2010
comment
И фильтры являются частью Servlet API. Обратите внимание на имя пакета java.sun.com/javaee/ 6/docs/api/javax/servlet/Filter.html - person BalusC; 06.01.2010

Нет ничего похожего на контейнер фильтра, он включен в контейнер сервлета.

person fastcodejava    schedule 06.01.2010

Фильтры сервлетов Java позволяют «накладывать» дополнительное поведение перед сервлетом, страницей JSP или даже статическими ресурсами, такими как css, js и файлы изображений.

Классический пример использования фильтра — это авторизация: проверка, чтобы убедиться, что пользователь авторизован для просмотра указанного ресурса.

Некоторые наблюдения:

  • Фильтр может работать перед указанным ресурсом (сервлетом и т. д.), после или в обоих случаях.
  • К одному и тому же ресурсу можно применять несколько фильтров.
person Drew Wills    schedule 06.01.2010