如何设置过滤器 Filter? 介绍 Filter 即为过滤,用于在 Servlet 之外对 request 或者 response 进行修改。它主要用于对用户请求 进行预处理,也可以对 HttpServletResponse 进行后处理。作用:过滤器是处于客户端和服务器资源文件之间的一道过滤网,帮助我们过滤掉一些不符合要求的请求,通常用作 Session 校验,判断用户权限,如果不符合设定条件,则会被拦截到特殊的地址或者基于特殊的响应。也常用于解决多个Servlet共性代码的冗余问题,如乱码处理等。
配置过滤器路径 1、通过xml配置 2、通过Web注解配置 配置单个路径规则:在自定义的Filter类上加上注解:@WebFilter(“/过滤的目标资源路径”)配置多个拦截路径,如: @WebFilter(urlPatterns={“/s01”, “/s02”}) 过滤器实例 @WebFilter(“/filter/s01”) 仅过滤filter路径下访问的s01如果@WebFilter(“/filter/*”) 则过滤filter路径下访问的所有文件如果@WebFilter(“*”) 则过滤所有访问的文件 过滤器解决字符编码问题 在我们以往的servlet中,每调用一次service都要设置一遍字符编码 接下来让我们通过过滤器解决字符编码问题,一劳永逸 实例 注意 @WebFilter(“/*”)代表所有访问的文件都会进入到该过滤器中或许会影响css、js、image;那应该怎么解决呢?答案是:放行! 在以上的过滤器中加上以下代码: 过滤器实现登录验证 @WebFilter(“/isLogin/*”) 代表isLogin下访问的文件需要进行登录验证(判断是否登录)包括jsp页面哦; 实例 doFilter方法的逻辑仅供参考,实际应用按需求定制基本逻辑为:判断是否登录 -> 登录 ? 放行 : 跳转到登录页面 注意 selvet的路径要在isLogin下,例如@WebServlet(value={“isLogin/account”})当然jsp页面也要在isLogin目录下具体结构参考以下思维导图 web项目思维导图 该图不仅仅记录了需要@WebFilter(“/isLogin/*”)过滤的jsp页面在isLogin下还记录了整个web项目的结构
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/67908.html