最近做项目遇到一个Filter需要配置多个url-pattern,上网查了下资料,经测试,现总结下

filter-mapping元素位于web.xml文件中filter元素之后serlvet元素之前。它包含如下三个可能的子元素。filter-name 这个必需的元素必须与用filter元素声明时给予过滤器的名称相匹配。url-pattern 此元素声明一个以斜杠(/)开始的模式,它指定过滤器应用的URL。所有filter-mapping元素中必须提供url-pattern或 servlet-name。但不能对单个filter-mapping元素提供多个url-pattern元素项。如果希望过滤器适用于多个模式,可重复整个filter-mapping元素。

一、完全错误的方式

<filter>
<filter-name>authority</filter-name>
<filter-class>com.util.AuthorityFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>authority</filter-name>
<url-pattern>/pages/cmm/*;/pages/genbill/*</url-pattern>
</filter-mapping>

二、有一定作用,但不能实现需要的效果,只会过滤最下面配置的url-pattern。

<filter>
<filter-name>authority</filter-name>
<filter-class>com.util.AuthorityFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>authority</filter-name>
<url-pattern>/pages/cmm/*</url-pattern>
<url-pattern>/pages/genbill/*</url-pattern>
</filter-mapping>

三、现在给出正确的配置方式

<filter>
<filter-name>authority</filter-name>
<filter-class>com.util.AuthorityFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>authority</filter-name>
<url-pattern>/pages/genbill/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>authority</filter-name>
<url-pattern>/pages/cmm/*</url-pattern>
</filter-mapping>

Filter需要配置多个url-pattern的更多相关文章

  1. Filter中排除对指定URL的过滤

    1. 我们可以在web.xml中配置filter来对指定的URL进行过滤,进行一些特殊操作如权限验证等. <!– session过滤filter –> <filter> < ...

  2. servlet(3):servlet和filter<url-pattern>配置

    一,servlet容器对url的匹配过程: 当 一个请求发送到servlet容器的时候,容器先会将请求的url减去tomcat的上下文路径(配置的访问系统的基础路径例如intellij idea配置的 ...

  3. [ /* 和 / 的区别 ] Difference between / and /* in servlet mapping url pattern

    <url-pattern>/*</url-pattern> The /* on a servlet overrides all other servlets, includin ...

  4. 一个Filter需要配置多个url-pattern

    最近做项目遇到一个Filter需要配置多个url-pattern,上网查了下资料,经测试,现总结下 一.完全错误的方式 Java代码 <filter> <filter-name> ...

  5. springboot中使用filter用配置类方式

    在03-springboot-web的Filter包下,创建HeFilter类 代码示例: package com.bjpowernode.springboot.filter; import java ...

  6. springboot中filter的配置和顺序执行

    项目结构 springboot版本 <parent> <groupId>org.springframework.boot</groupId> <artifac ...

  7. 利用 filter 机制 给 静态资源 url 加上时间戳,来防止js和css文件的缓存,利于开发调试

    直接上代码: public class WeiXinFilter implements Filter{ private static Logger logger = LoggerFactory.get ...

  8. Struts2版本配置2.1以前与以后---关于filter的配置

    严重: Dispatcher initialization failed java.lang.RuntimeException JavaStrutsfreemarkerApacheXML  严重: D ...

  9. 关于Filter的配置

    配置代码: <filter> <display-name>OneFilter</display-name>  <filter-name>OneFilte ...

随机推荐

  1. 网络基础配置--usg系统升级

    1.usg2000系统升级 1.1.TFTP设置 这里用到一个工具:3CDeamon, 是在由3Com开发类别 Web Development Freeware 软件,是一个简易服务器工具,含TFTP ...

  2. IDEA常用配置

    一.安装Activiti 1.File -> Settings -> Plugins -> 搜索actiBPM 2.解决中文乱码问题 修改IDEA的安装目录中的idea.exe.vm ...

  3. linux 文件打包压缩成.tar.gz

    tar czvf beian.drcluod.cn.20180509.tar.gz ./beian.drcloud.cn/*

  4. 潭州课堂25班:Ph201805201 django 项目 第三十四课 后台文章标签更新功能 ,创建功能实现(课堂笔记)

    g更改标签:,前台要向后台传来 id, name, 对标签进行校验:标签不能为空,标签是否已经存在, 流程: def put(self, request, tag_id): ''' 更改标签 :par ...

  5. ironic-inspector硬件信息收集

    主机上报 ironic-inspector流程会在小系统里收集裸机的硬件信息,然后上报到ironic-conductor. 其中收集硬件信息主要使用hwinfo和lshw命令.Centos可以使用如下 ...

  6. db2 reorgchk

    db2 reorgchk 命令是最重要的.也是经常被忽略的 DB2 调整命令之一. db2 reorgchk 命令被忽略是因为它不是一个一次性调整项.由于更新是在 DB2 数据库上执行的,因此关于表的 ...

  7. python之模块2

    1.logging模块 等级 debug--->info--->warning(默认)--->error--->critical 配置两种方式: #1.congfig函数 lo ...

  8. Servlet(6)—HttpServletRequest接口和HttpServletResponse接口

    HttpServletRequest接口和HttpServletResponse接口是继承ServletRequest和ServletResponse接口,是他们的子接口,但是我们在程序中进程看到Se ...

  9. 微信小程序中遮罩层的滚动穿透问题

    如果弹出层没有滚动事件: <view wx:if="{{alert}}" catchtouchmove="myCatchTouch"> <te ...

  10. E. Thematic Contests 二分,离散化

    题目意思是给你n个问题即数字,n的大小代表问题所在的话题,题目要求举办多场比赛,每场比赛的只能一种问题,且后一场比赛的问题必须是前一场的两倍,求举办比赛可能最多的问题总数 传送门 解题思路:将出现每种 ...