A. 過濾器和攔截器的區別
過濾器可以簡單理解為「取你所想取」,忽視掉那些你不想要的東西;攔截器可以簡單理解為「拒你所想拒」,關心你想要拒絕掉哪些東西,比如一個BBS論壇上攔截掉敏感詞彙。
1.攔截器是基於java反射機制的,而過濾器是基於函數回調的。
2.過濾器依賴於servlet容器,而攔截器不依賴於servlet容器。
3.攔截器只對action起作用,而過濾器幾乎可以對所有請求起作用。
4.攔截器可以訪問action上下文、值棧里的對象,而過濾器不能。
5.在action的生命周期里,攔截器可以多起調用,而過濾器只能在容器初始化時調用一次。