`
cn_arthurs
  • 浏览: 321741 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在web.xml中添加多个filter

阅读更多

web.xml中的多个filter的运行顺序
walker(walker_cn@163.com)  2007-11-20
环境:tomcat 6.x

多个筛选器的运行顺序取决于下列规则:
将 filter-mapping 元素包含与请求匹配的 url-pattern的筛选器按其在 web.xml 部署描述符中出现的顺序添加到链中。
将 filter-mapping 元素包含与请求匹配的 servlet-name 的筛选器添加在链中与 URL 模式匹配的筛选器之后。
链上先进先出的,链中最后的项目往往是最初请求的资源。
也就是说:

1.以url-pattern方式配置的filter运行时肯定先于以servlet-name方式配置的filter
2.以url-partern方式配置的filter中,如果有多个与当前请求匹配,则按web.xml中filter-mapping出现的顺序来运行
3.对于以servlet-name方式配置的filter,如果有多个与当前请求匹配,也是按web.xml中filter-mapping出现的顺序来运行

 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/weizhi/archive/2007/11/20/1895014.aspx

 

DEMO:

<!-- 字符编码Filter -->
	<filter>
		<filter-name>encodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<param-name>forceEncoding</param-name>
			<param-value>true</param-value>
		</init-param>
	</filter>
	<!-- 后台用户登录验证Filter -->
	<filter>
		<filter-name>backendFilter</filter-name>
		<filter-class>com.maxwell.help.LoginFilter</filter-class>
	</filter>
	<!-- 前台会员登录验证Filter -->
	<filter>
		<filter-name>memberFilter</filter-name>
		<filter-class>com.maxwell.help.MemberFilter</filter-class>
	</filter>

	<!-- 字符编码Filter-mapping -->
	<filter-mapping>
		<filter-name>encodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<!-- 后台用户登录验证Filter-mapping -->
	<filter-mapping>
		<filter-name>backendFilter</filter-name>
		<url-pattern>/backend/*</url-pattern>
	</filter-mapping>
	<!-- 前台会员登录验证Filter-mapping -->
	<filter-mapping>
		<filter-name>memberFilter</filter-name>
		<url-pattern>/member/*</url-pattern>
	</filter-mapping>

 

分享到:
评论

相关推荐

    web.xml详细说明

    用于 web.xml 配置详解。例如: &lt;web-app&gt; &lt;display-name&gt;&lt;/display-name&gt;定义了...&lt;filter-mapping&gt;&lt;/filter-mapping&gt; 一旦命名了一个过滤器,就要利用filter-mapping元素把它与一个或多个servlet或JSP页面相关联。

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很多例子都是目前web开发中经常使用的功能,具有相当的实用价值。本书不仅可以作为java web开发的学习用书,还可以作为从事java web开发的...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很多例子都是目前web开发中经常使用的功能,具有相当的实用价值。本书不仅可以作为java web开发的学习用书,还可以作为从事java web开发的...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很多例子都是目前web开发中经常使用的功能,具有相当的实用价值。本书不仅可以作为java web开发的学习用书,还可以作为从事java web开发的...

    Web配置详解

    jsp的web.xml配置说明 Web.xml常用元素&lt;web-app&gt;&lt;display-name&gt;&lt;/display-name&gt;定义...&lt;filter-mapping&gt;&lt;/filter-mapping&gt; 一旦命名了一个过滤器,就要利用filter-mapping元素把它与一个或多个servlet或JSP页面相关联。

    Java™ Servlet 规范.

    目录 前言 ............................... 3 其他资料 ......................................................................................................................................................

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很多例子都是目前web开发中经常使用的功能,具有相当的实用价值。本书不仅可以作为java web开发的学习用书,还可以作为从事java web开发的...

    Servlet3.1规范(最终版) PDF

    Servlet3.1规范(最终版) JavaTM Servlet 规范 版本 3.1(最终版) Shing Wai Chan Rajiv Mordani [作者] 穆茂强 张开涛 [译者] 2012年6月翻译 2013年7月修订 目录 前言 ..................................

    防止多用户登录同一帐号

    web.xml添加filter: &lt;filter&gt; &lt;filter-name&gt;SingleFilter&lt;/filter-name&gt; &lt;filter-class&gt;org.com.filter.SingleFilter&lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;SingleFilter&lt;/filter-name...

    企业人力资源管理项目SSH+EXT+MySQL+MD5

    在web.xml的display-name标签与welcome-file-list标签中加入一下代码 struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* org.springframework.web.context....

    struts2+hibernate学习示例

    14、Hibernate的过滤器设置,详见 shtest.HibernateFilter.java(这时候要注意在web.xml中的filter设置) 可以拿这个Demo和Struts2_Test比较一下,认真看的话,你会发现很多有用的信息, 至少能够搞清楚Hibernate到底...

    webx3框架指南PDF教程附学习Demo

    • 开放性 —— Webx被设计成多个层次,层次间的分界线很清晰。每个层次都足够开放和易于扩展。你可以使用全部的Webx,也可以仅仅使用到Webx的任何一个层次。 引言 .................................................

    简单配置 shiro + spring +springMVC+hibernate简单框架

    org.springframework.web.filter.DelegatingFilterProxy &lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;shiroFilter&lt;/filter-name&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; maven...

    web页面模块化异步渲染struts-gpipe.zip

    扣,struts-gpipe项目提供了将整个页面拆分成若干模块的功能,每一个模块都独立渲染,多个模块并发渲染,我们可以让一部分模块渲染完成之后先 返回给客户端,让另一部分模块渲染之后后返回给客户端,不用想,这样...

    Spring MVC 入门实例

    你可以在 list 标签中配置多个 value 标签. database.xml: 1 &lt;?xml version="1.0" encoding="UTF-8"?&gt; 2 &lt;!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" ...

    Spring Security 中文教程.pdf

    23.2. 把X.509认证添加到你的web系统中 23.3. 为tomcat配置SSL 24. 替换验证身份 24.1. 概述 24.2. 配置 A. 安全数据库表结构 A.1. User表 A.1.1. 组权限 A.2. 持久登陆(Remember-Me)表 A.3. ...

    springboot参考指南

    为应用添加Servlet,Filter或ServletContextListener ii. 64.2. 改变HTTP端口 iii. 64.3. 使用随机未分配的HTTP端口 iv. 64.4. 发现运行时的HTTP端口 v. 64.5. 配置SSL vi. 64.6. 配置Tomcat vii. 64.7. 启用Tomcat...

    ssh(structs,spring,hibernate)框架中的上传下载

    如果有多个映射文件需要声明,使用类路径映射方式显然比直接单独指定映射文件名的方式要简便。  第27~30行定义了Spring代理Hibernate数据操作的HibernateTemplate模板,而第32~34行将该模板注入到tfileDAO中。  ...

    Jetty中文手册

    Jetty 欢迎访问Jetty文档 Wiki. Jetty是一个开源项目,提供了...override-web.xml–Post-web.xml configuration 特性参考 SSL Connectors参考 QoSFilter参考 DoSFilter参考 FAQ Contributing Contributing to Jetty

Global site tag (gtag.js) - Google Analytics