public class AuthFilter implements Filter { public void init(FilterConfig fc) throws ServletException { System.out.println("in filter,init()..."); } public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) servletRequest; HttpServletResponse response = (HttpServletResponse) servletResponse; String currentURL = request.getRequestURI(); if(request.getSession().getAttribute("UISORFGAP")==null || "".equals(request.getSession().getAttribute("UISORFGAP"))){ //拿到判断是否存在前置机和导入服务器标识 request.getSession().setAttribute("UISORFGAP", UISOrFGAPMarkUtil.getFgapFlag()); } if(currentURL.endsWith(".jsp")||currentURL.endsWith(".action")){ if(currentURL.indexOf("verifyCodeImg.jsp") == -1){ HttpSession session = request.getSession(true); // 没有返回一个新的. LoginUser loguser = (LoginUser) session.getAttribute("loginUser"); String path = request.getContextPath(); if(currentURL != null && (currentURL.indexOf("/login.jsp") == -1 && currentURL.indexOf("isLogin_log.action") == -1)){ if(loguser == null && currentURL.indexOf("forword.jsp")==-1){ response.sendRedirect(path + "/forword.jsp"); return; }else if(currentURL.indexOf("forword.jsp")!=-1){ filterChain.doFilter(request, response); return; }else if(loguser != null){ filterChain.doFilter(request, response); return; } }else{ filterChain.doFilter(request, response); return; } }else{ //image过滤掉 filterChain.doFilter(request, response); return; } }else{ // js css 图片过滤 filterChain.doFilter(request, response); return; } } public void destroy() { System.out.println("in filter,destroy()..."); } }
在web.xml中的配置
<filter> <filter-name>AuthFilter</filter-name> <filter-class> com.topwalk.fgap.utils.AuthFilter </filter-class> </filter> <filter-mapping> <filter-name>AuthFilter</filter-name> <url-pattern>*.jsp</url-pattern> <url-pattern>*.action</url-pattern> </filter-mapping>
相关推荐
本教程将深入讲解如何配置和使用Servlet过滤器,以及介绍五个经典的过滤器实例。 首先,让我们理解Servlet过滤器的基本概念。根据Java Servlet规范,过滤器(Filter)是一个实现了javax.servlet.Filter接口的类,它...
在这个简单的实例中,我们将探讨如何创建和使用一个基本的Java过滤器。 首先,我们需要实现`javax.servlet.Filter`接口,并覆盖其核心方法`doFilter()`。`doFilter()`方法在每次请求到达目标资源前和离开时都会被...
本篇将深入探讨JSP过滤器的使用,并通过一个实际项目案例来展示其应用。 ### 1. JSP过滤器基础 JSP过滤器是基于Servlet规范的,遵循`javax.servlet.Filter`接口。它在用户请求到达目标资源之前被调用,可以在请求...
本实例“包含过滤器的一个简单登录实例”将引导我们了解如何在实际项目中运用过滤器进行用户验证,确保只有合法用户才能访问受保护的资源。 过滤器在Java Web开发中被广泛应用,它们是Servlet规范的一部分,定义在`...
在本实例中,可能包含一个用于处理特定请求或者对用户身份验证的过滤器。 接着,我们来看文件上传下载功能。在Struts2中,文件上传主要依赖于Apache Commons FileUpload库。开发者需要在Action类中创建适当的字段来...
Servlet过滤器是Java Web开发中的一个重要概念,它允许开发者在请求到达Servlet之前或者响应离开Servlet之后进行拦截处理。在这个实例代码中,我们将深入探讨Servlet过滤器的使用,以及如何通过它来增强应用程序的...
首先,定义一个过滤器实例,指定过滤器的名称`encodingfilter`和对应的类`xiaogu.EncodingFilter`。然后,通过`<init-param>`标签设置编码方式,这里是`UTF-8`。最后,通过`<filter-mapping>`指定过滤器应作用于所有...
"Java中文显示过滤器实例"就是一个针对这个问题的解决方案,它可以帮助开发者避免出现中文乱码的问题,使得程序能更有效地处理中文数据。在这个实例中,我们将深入探讨Java中的编码问题,以及如何使用过滤器来解决...
Servlet过滤器是Java Web开发中的一个重要概念,它允许开发者在请求到达Servlet之前或者Servlet响应返回客户端之前进行拦截处理。在本实例中,我们将深入探讨Servlet过滤器(Filter)的使用和实现,以及它在实际应用...
本实例的目标是设计并实现一个简单的Servlet过滤器,用于检查用户的登录状态。具体来说,当用户通过正常的登录流程进入系统后,服务器会在用户的会话(Session)中存储一个表示已登录用户的对象(命名为"user")。...
在“QT事件过滤器实例”中,描述提到监听鼠标移入移出事件。这是常见的用户交互事件,对应于QT的`QEvent::Enter`和`QEvent::Leave`类型。为了实现这一功能,你需要创建一个继承自`QObject`的新类,并重写`...
FFmpeg Filter 过滤器是FFmpeg项目中用于音视频数据处理的一个重要组件,通过libavfilter库提供丰富的视频和音频过滤功能。这些过滤器可以在不同阶段对媒体数据进行操作,包括但不限于格式转换、帧率调整、大小缩放...
这里,我们定义了一个名为`CharacterEncodingFilter`的过滤器,并将其映射到所有URL(`/*`),意味着任何请求都会经过这个过滤器。 3. 最后,部署应用并测试。现在,无论用户发送什么请求,服务器都会自动将字符...
例如,创建一个过滤器用来将数字转换为中文数字表示: ```javascript Vue.filter('chineseNum', function(value) { // 实现将阿拉伯数字转为中文数字的逻辑 }); ``` 然后在模板中使用: ```html {{ number | ...
02 计时过滤器实例.exe02 计时过滤器实例.exe
过滤器
2. **Filter链**:多个过滤器通过实例化并链接起来形成一个链。数据从一端进入,依次通过每个过滤器,最后从另一端出来。Java中可以使用`FilterChain`对象来管理这个链。 3. **Filter的组合**:过滤器可以自由组合...
如果一个过滤器决定阻止请求,那么后续的过滤器和目标Servlet都不会收到这个请求。 总结起来,过滤器是Web应用中不可或缺的一部分,它们提供了强大的功能,如数据安全、编码一致性以及自动化操作。通过合理地使用...
本过滤器将未压缩的视频流RGB32编码为H264格式,将未压缩的音频流PCM编码为AAC格式,写入MP4文件。有2个输入引脚:视频引脚和音频引脚。 参见本过滤器的介绍文章:...
1. `init(FilterConfig config)`:在过滤器实例化后并首次被调用时,服务器会调用这个方法。在这里,可以初始化过滤器的配置参数,这些参数通常在`web.xml`文件中定义。 2. `doFilter(ServletRequest request, ...