程序结构:
FilterDemo.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Two Filter Test</title> </head> <body> <% System.out.println("FiterlDemo.jsp"); %> </body> </html>
FilterDemo01.java:
FilterDemo02.java:
web.xml:
将项目发送到服务器上运行,浏览器地址栏输入
localhost:8888/FilterDemo/FilterDemo.jsp,控制台输出:
可见程序先执行了过滤器1再执行过滤器2,然后再显示jsp页面。
接下来改变web.xml中filter的顺序,看看会不会有什么区别:
1、只调换顺序,顺序不变。
web.xml:
下面是运行结果,表明只要改变了就会改变过滤器执行顺序。
2、不调换顺序,顺序改变。
web.xml:
下面的运行结果表明:调换顺序不会改变过滤器的执行顺序,只有顺序改变才会导致过滤器执行顺序改变。