问题:

FilterChain参数是做什么用的?假如我就有一个过滤器,FilterChain.doFilter(request,response);这句话是不是必须写?
还有如果有几个过滤器,用FilterChain.doFilter(request,response)调用下一个过滤器的时候,Java怎么知道调用的顺序呢?难道是按照web.xml文件里配置的顺序么?

我来给你简单的说一下吧:)
首先要明确。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继续运行哦
--------------------------------
这个你就可接写/*
好了。它是说对哪些范围起作里这个过滤器

来自:http://zhidao.baidu.com/question/45549380.html

Filter过滤器怎么用相关推荐

  1. [JAVA EE] Filter过滤器

    Filter过滤器 ◼ 过滤器(Filter)可以动态地拦截请求和响应. ◼ 应用场景:过滤敏感词汇.防止SQL注入.设置字符编码.进行URL级 别的权限访问控制.压缩响应信息等. 启动文件DemoA ...

  2. Filter(过滤器)

    一.Filter过滤器(重要) Javaweb中的过滤器可以拦截所有访问web资源的请求或响应操作. 1.Filter快速入门 1.1.步骤: 1. 创建一个类实现Filter接口 2. 重写接口中方 ...

  3. filter[过滤器]使用大全

    一.页面编码过滤器 1.开发EncodingFilter.java文件,继承自javax.servlet.Filter: package bluemoon.crm.systemmanage.strut ...

  4. (JavaWeb)Filter过滤器

    Filter过滤器 Filter:过滤器,用来过滤网站的数据. 自动登录 统一设置编码格式 访问权限控制 敏感字符过滤等 过滤器实际上就是对web资源进行拦截,做一些处理后再交给下一个过滤器或serv ...

  5. Spring MVC在参数绑定前通过Filter过滤器改变请求参数的值

    第一步,对request请求进行增强: /*** author: zhangxueliang* date: 2019-08-23*/ public class ParameterServletRequ ...

  6. spring boot Filter过滤器的简单使用

    springboot使用Filter过滤器有两种方式: 一种是实现Filter接口然后通过@Component注解向项目加入过滤器 另一种是通过配置类来配置过滤器 @Component public ...

  7. 【Servlet】Filter过滤器详解、使用示例

    Filter过滤器讲解 定义 过滤器处于浏览器与servlet之间,是一个实现了 javax.servlet.Filter 接口的 Java 类 客户端发送的请求.服务器发送的资源,需要通过过滤器,才 ...

  8. JBuilder9+Weblogic8.1——Filter过滤器在Jbuilder9中的运用

    JBuilder9+Weblogic8.1--Filter过滤器在Jbuilder9中的运用 一.首先建立工程FilterTest,建立Web Application,名称也为FilterTest. ...

  9. java filter教程_Java Web Filter 过滤器学习教程(推荐)

    一.Filter简介 Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态 ...

  10. vue+filter过滤器(多参数)传参 - 代码篇

    vue+filter过滤器(多参数)传参 - 代码篇 传1个参数 //html {{a1 | filterAa}} //js filters:{filterAa(a1){// a1是传入的参数} } ...

最新文章

  1. 摊牌了:我就靠这几点,搞定了算法面试官
  2. 让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求
  3. 无法接收 agent 发出的检测信号_BR-PST系列基桩非金属超声波检测仪的系统延时来源及测试校正方法...
  4. Stream 与 byte[] 互转
  5. Idea debugger 无法启动-unable to open debugger port , java.net.SocketException socket closed
  6. 【C++】50.编程中切换状态的【有限状态机】
  7. 3.改变 HTML 内容
  8. python输出星号_Python的星号(*、**)的作用
  9. 解决ie6中fixed不起作用的问题
  10. 软件产品质量要求与评价_软件质量模型
  11. 一切都是对象,一切都是指针,一切都是东西(python的编程哲学)
  12. linux显卡驱动未加载,Linux下无显卡驱动的解决办法
  13. 蓝牙之十一 AVRCP协议
  14. Android开发 -使用腾讯TBS浏览服务 X5webview控件
  15. 国内免费CMS系统大全
  16. mariadb 的安装及基本配置
  17. Linux debian解压和压缩.rar文件教程
  18. 计算机化自适应测验 英语,计算机化自适应测验选题策略研究
  19. Java面试题有哪些
  20. 我的MFC/C++学习笔记 http://blog.bccn.net/CrystalFan/6909

热门文章

  1. CSS 自定义滚动条
  2. C语言 计算职工工资
  3. JAVA: 初级项目之基于Swing界面的仿QQ(三)
  4. 职场的核心竞争力,其实只有一个
  5. js之类型、值、变量含义
  6. linux查看服务器内存占用情况
  7. 判定分类精确度:kappa系数
  8. 晒晒牛人老公的爆笑忏悔
  9. 今天申请了一个gmail邮箱,用于备份资料。
  10. matlab均值滤波 工频干扰,为什么会有工频干扰_工频干扰产生原因及解决方案