这一章主要讲Filter过滤器,像是一个”代理”;
1.过滤器Filter?作用/原理?

过滤器Filter
2.Filter类API

Filter生命周期?

自定义一个Filter?
- 实现Filter接口,重写init、destroy、doFilter方法,其中doFilter方法是关键;
- doFilter方法会对request进行处理,如判断IP、param等,例如禁用一些IP,则判断request的IP若在禁用范围内,则直接return;否则,chain.doFilter()进入下一步处理——下个过滤器或调用Servlet的service()方法;
3.怎么配置、使用Filter?
(1)定义自己的Filter类(实现Filter接口);
(2)配置web.xml;

<filter>

<filter-mapping>



(3)测试:访问” /note ”的URL,会调用自己定义的Filter;
4.组合多个Filter——串联

5.如何修改传递的response——采用装饰者模式
写一个类实现HttpServletResponse,并且持有一个response对象;
则这个类包含了原response对象,并且本身也是一个HttpServletResponse对象;
这个类可以作为doFilter方法的response传递;
本文深入探讨了Java Web中的Filter过滤器,它作为一个代理,用于在请求到达Servlet之前进行预处理,以及在响应返回给客户端之后进行后处理。Filter接口的init、doFilter和destroy方法构成了其生命周期。在doFilter方法中,可以实现如IP限制等功能。配置Filter需在web.xml中声明并映射。通过装饰者模式,可以修改response内容。多个Filter可以串联使用,形成过滤链。
726

被折叠的 条评论
为什么被折叠?



