Я исследую это, чтобы лучше отвечать на интервью. Я искал подробный и краткий ответ.
До сих пор и, во что бы то ни стало, исправлять меня, если я ошибаюсь или не нуждаюсь в деталях:
- Фильтры являются частью API Servlet, Interceptors - Struts 2. (Кажется очевидным, хотя)
- Стек Interceptor запускается в запросах в сконфигурированном пакете, тогда как фильтры применяются только к их сопоставленным URL-адресам.
- Перехватчики могут быть настроены на выполнение или нет в зависимости от конкретных методов целевого действия с помощью исключающих методов и includeMethods, в то время как фильтрам не хватает этой функции.
- Фильтры представляют собой реализацию шаблона Intercepting Filter, в то время как Interceptors имеют шаблон Interceptor.
Это похоже на точный и полный ответ? Должен ли я что-нибудь добавить или исправить? Что о проблемах/различиях потоков?