`
ft4453080
  • 浏览: 14531 次
  • 性别: Icon_minigender_1
  • 来自: 天津
文章分类
社区版块
存档分类
最新评论

[转]doFilter使用

阅读更多

首先要明确。Filter是JSP2.0里面的东西 ,顾名思义,也就是过滤器的意思
和你说说如何用吧。要用Filter就得在web.xml中配置
例:
//配置方法和配置普通的Servlet一样的哦
<filter>
      <filter-name>PrivFilter</filter-name>
      <filter-class>com.myPriv.filter.PrivFilter</filter-class>
   </filter>

<filter-mapping>
    <filter-name>PrivFilter</filter-name>
    <url-pattern>/resource/*</url-pattern>
</filter-mapping>
//com.myPriv.filter.PrivFilter是这个过滤器所在的位置。当然这个过滤器必须实现接口javax.servlet.Filter。
然后就可以在过滤器这个接口方法中增加过滤条件了
public void doFilter(ServletRequset request, ServletResponse response,FilterChain chain)
thows ServletException, IOException{

然后你可以把过滤条件写出来,写在doFilter方法里面
我这里写一个简单的例子:
public void doFilter(ServletRequest req, ServletResponse res,
   FilterChain chain) throws IOException, ServletException {
   HttpServletRequest request = (HttpServletRequest) req;
   HttpServletResponse response = (HttpServletResponse) res;
   HttpSession session=request.getSession();
   ServletContext application=session.getServletContext();
  
      if(session.getAttribute("userSession")==null)
      {
       response.sendRedirect("error/priv_error.jsp");
       return;
      }
      else
      {
       chain.doFilter(request, response);
      }

}

在上面的这个过滤方法中,如果session.getAttribute("userSession")==null)那就跳转到错误页面。如果不为空,则继续
所以
chain.doFilter(request, response);的意思就是跳转到下个页面,
明白了吧?


------------------------
java会在处理每一个Servlet时都走一次Filter的。所以你不必担心你的过滤不起作用了
而且chain.doFilter(request.response);
是必须的。没有他,程序就不会继续了:)他是让你的request和response继续运行哦

分享到:
评论

相关推荐

    java filter过滤器

    Filter的生命周期包括三个主要方法:`init()`、`doFilter()` 和 `destroy()`。 1. **生命周期方法** - `init(FilterConfig filterConfig)`: 这是过滤器的初始化方法,Servlet容器在加载过滤器时会调用此方法,传递...

    使用filter拦截servlet和jsp页面的内容,进行过滤后输出

    为了增强应用程序的安全性、性能优化或者实现特定的功能,我们常常会使用过滤器(Filter)来拦截请求和响应。本文将详细介绍如何使用filter来对servlet和jsp页面的内容进行过滤,并在过滤后输出。 首先,了解...

    使用HttpServletRequestWrapper在filter修改request参数

    在`doFilter`方法中,我们可以使用`chain.doFilter(request, response)`前,将原始请求包装成`CustomRequestParamWrapper`实例: ```java public void doFilter(ServletRequest request, ServletResponse response,...

    java servletfilter实现全站动转静

    同时,为了防止重复生成,我们可以使用文件系统或数据库来跟踪已生成的静态页面。 4. **处理缓存**:当请求的资源已经存在静态版本时,我们可以直接返回该文件,而无需再次调用后端服务。 5. **错误处理**:对于...

    (四)Jsp filter的简单使用

    【Jsp Filter的简单使用】 在Java Web开发中,Servlet Filter是实现动态网页(JSP)功能增强的重要组件。Filter接口允许我们对HTTP请求和响应进行拦截处理,它提供了在请求到达目标Servlet或JSP之前对其进行预处理...

    hibernate转换编码配置和权限及java代码

    在`doFilter()`方法中,`request.setCharacterEncoding("GBK")`确保了请求数据的编码方式,而`httpresp.setHeader("Cache-Control","no-cache")`和`httpresp.setHeader("Pragma","no-cache")`则用于禁止浏览器缓存...

    过滤器的使用过滤器的使用

    本篇文章将深入探讨Java中的过滤器使用技术,旨在帮助开发者理解和掌握这一核心技术。 首先,我们需要了解过滤器的概念。在Java Servlet规范中,过滤器是一个实现了javax.servlet.Filter接口的类,它可以对HTTP请求...

    java Web项目中过滤器使用方法

    本文将详细讲解Java Web项目中过滤器的使用方法,以及如何配置和实现过滤器。 1. **过滤器的概念** 过滤器是Servlet规范的一部分,它在请求被Servlet处理之前或之后执行,可以用来实现如登录检查、字符编码转换、...

    过滤器简单使用代码!!

    在这个主题中,我们将深入探讨"过滤器简单使用代码",包括字符编码、检查字符以及如何使用过滤器验证用户是否登录。 1. **字符编码**: 在Web应用中,字符编码问题常常引起乱码。过滤器可以用来统一设置请求和响应...

    过滤器的使用了javabean

    在这个“过滤器的使用了javabean”的主题中,我们将深入探讨如何利用Java Filter进行中间处理以及JavaBean在其中的作用。 首先,让我们了解什么是过滤器。在Java Servlet规范中,过滤器是一个实现了javax.servlet....

    关于EncodingFilter的简单使用

    在`doFilter`方法中,我们通常会使用`ServletRequestWrapper`和`ServletResponseWrapper`来包装原始的请求和响应对象,然后设定它们的编码。 下面是一个`EncodingFilter`的基本实现示例: ```java public class ...

    Java Web过滤器详解

    例如,在处理用户的输入数据时,我们可以使用过滤器来过滤掉一些非法字符,以避免系统的安全性问题。 四、图像格式转换 过滤器可以对响应的内容进行图像格式转换。例如,在Web应用程序中,我们可以使用过滤器来将...

    Filter使用范例--登陆验证

    在这个"Filter使用范例--登陆验证"的主题中,我们将深入探讨如何利用Filter进行用户登录验证,以确保只有经过身份验证的用户才能访问受保护的资源。 Filter接口在`javax.servlet`包中定义,它提供了`doFilter()`...

    filter过滤器的简单使用.rar

    在标题提到的"filter过滤器的简单使用.rar"压缩包中,很显然包含了一个关于如何在Maven项目和Spring Boot项目中使用Filter的示例。下面将详细介绍Filter的基本概念、工作原理以及如何在两种项目环境中应用。 **...

    这是J2EE练习5(exercise5)学习使用过滤器的题目,代码实现,作业报告

    本练习5(Exercise5)专注于过滤器的使用,通过代码实现和作业报告来深入理解这一概念。 过滤器的工作原理基于Servlet规范中的`Filter`接口。当用户发起一个HTTP请求时,服务器会按照`web.xml`配置文件中定义的顺序...

    使用过滤器的方法!教你如何使用过滤器

    本教程将详细介绍如何使用过滤器,并通过实例帮助你理解其工作原理。 首先,我们要了解过滤器的基本概念。在Java Web中,Filter是实现了javax.servlet.Filter接口的类。它可以在请求到达Servlet或JSP之前和之后进行...

    JAVAEE过滤器的使用

    本文将深入探讨JAVAEE过滤器的使用。 1. **过滤器的基本概念** - **Filter接口**:Java Servlet API定义了`javax.servlet.Filter`接口,过滤器必须实现这个接口。 - **生命周期**:过滤器的生命周期包括初始化...

    Java中过滤器的使用

    本篇文章将详细探讨Java中过滤器的使用,并通过一个具体的测试实例进行说明。 首先,我们需要了解Java中的Servlet规范定义了Filter接口,该接口提供了对HTTP请求和响应进行拦截的能力。过滤器通过在Web应用程序部署...

    javaweb的过滤器类的简单使用

    本篇文章将详细介绍如何在Java Web应用中使用过滤器,这对于初学者来说是非常基础且实用的知识。 一、过滤器的概念与作用 过滤器是Java Servlet规范的一部分,定义在`javax.servlet.Filter`接口中。它的主要任务是...

Global site tag (gtag.js) - Google Analytics