`
wusuoya
  • 浏览: 637725 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

Filter 配置多个URL-PATTERN

    博客分类:
  • web
 
阅读更多

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

Java代码 复制代码 收藏代码
  1. <filter>
  2. <filter-name>authority</filter-name>
  3. <filter-class>com.util.AuthorityFilter</filter-class>
  4. </filter>
  5. <filter-mapping>
  6. <filter-name>authority</filter-name>
  7. <url-pattern>/pages/cmm/*;/pages/genbill/*</url-pattern>
  8. </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。

Java代码 复制代码 收藏代码
  1. <filter>
  2. <filter-name>authority</filter-name>
  3. <filter-class>com.util.AuthorityFilter</filter-class>
  4. </filter>
  5. <filter-mapping>
  6. <filter-name>authority</filter-name>
  7. <url-pattern>/pages/cmm/*</url-pattern>
  8. <url-pattern>/pages/genbill/*</url-pattern>
  9. </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/*</url-pattern>
       <url-pattern>/pages/genbill/*</url-pattern>
</filter-mapping>


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

Java代码 复制代码 收藏代码
  1. <filter>
  2. <filter-name>authority</filter-name>
  3. <filter-class>com.util.AuthorityFilter</filter-class>
  4. </filter>
  5. <filter-mapping>
  6. <filter-name>authority</filter-name>
  7. <url-pattern>/pages/genbill/*</url-pattern>
  8. </filter-mapping>
  9. <filter-mapping>
  10. <filter-name>authority</filter-name>
  11. <url-pattern>/pages/cmm/*</url-pattern>
  12. </filter-mapping>
分享到:
评论

相关推荐

    servlet的url-pattern匹配规则详细描述(小结)

    - Filter的匹配规则与Servlet类似,但不同的是,Filter可以匹配多个Servlet。Filter的执行顺序取决于它们在`web.xml`中的定义顺序。每个匹配的Filter都会按照顺序依次执行,然后才到达目标Servlet。 7. **URL的...

    JavaWeb Servlet中url-pattern的使用

    如果你在配置或使用`url-pattern`时遇到问题,可以查阅更多文档,或者在相关论坛上提问,与其他开发者交流讨论,共同解决问题。希望这篇文章能对你理解和使用JavaWeb Servlet的`url-pattern`有所帮助,感谢你的阅读...

    超级注意复杂整合环境中的Filter-Mapping的顺序--配置单点登陆及UrlRewrite有感

    这篇博客“超级注意复杂整合环境中的Filter-Mapping的顺序--配置单点登陆及UrlRewrite有感”深入探讨了如何在这样的环境中正确配置Filter和Mapping,以实现单点登录(Single Sign-On, SSO)以及URL重写。下面我们将...

    jsp servlet中的过滤器Filter配置总结

    如果需要过滤多种类型的文件,可以添加多个`&lt;filter-mapping&gt;`,每种类型对应一个。 3. 过滤指定目录: 要过滤特定目录下的所有资源,可以使用`/folder_name/*`这样的模式。例如,过滤名为`folder_name`目录下...

    cors-filter-1.7.jar,cors-filter-2.5.jar,cors-filter-2.10.jar

    - `cors-filter-2.5.jar`和`cors-filter-2.10.jar`可能包含了更多的功能和优化,比如对复杂请求的支持,更灵活的配置选项,以及对新HTTP标准的兼容性。 总之,CORS过滤器是Tomcat中解决跨域问题的一个重要工具,...

    struts框架搭建

    - **国际化**:通过配置`struts.i18n.encoding`设置编码格式,并编写资源文件实现多语言支持。 - **异常处理**:可以通过配置`&lt;exception&gt;`标签来捕获和处理特定的异常。 以上就是关于Struts2框架搭建及配置的相关...

    Filter过滤器的代码及其web.xml配置代码

    -- 可以有多个url-pattern,也可以配置servlet-name --&gt; &lt;/filter-mapping&gt; ``` 在上述配置中,`&lt;filter-name&gt;`是Filter的标识符,`&lt;filter-class&gt;`指定Filter的全限定类名。`&lt;init-param&gt;`用于传递初始化参数。`...

    urlrewrite-maven-example.zip

    1. **条件组合**:通过`&lt;if&gt;`、`&lt;and&gt;`、`&lt;or&gt;`标签,可以组合多个条件。 2. **正则表达式**:在`&lt;from&gt;`和`&lt;to&gt;`中使用正则表达式,实现更复杂的URL匹配和替换。 3. **自定义变量**:通过`&lt;set&gt;`标签设置和引用...

    cors-filter-1.7.jar 和 java-property-utils-1.9.jar

    &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; ``` 在这个例子中,`cors.filter`类是CORSFilter的全限定类名,`cors.allowGenericHttpRequests`参数允许非简单请求,`cors.allowOrigin`参数设置允许的源,星号...

    跨域、cors-filter-1.7、java-property-utils-1.9

    在Web开发中,跨域(Cross-Origin Resource Sharing, CORS)是一个关键的概念,它涉及到浏览器的安全策略,限制了JavaScript从一个源获取资源到另...正确实施后,可以确保多个源的网页能够安全地与我们的服务进行交互。

    JavaWeb开发技术-Filter链.pptx

    Filter链则是多个Filter协同工作,按照预设顺序对请求进行处理的概念。下面我们将详细讨论Filter链的工作原理、配置以及其实现方式。 首先,理解Filter链的基本概念。当用户通过浏览器发起请求到Web服务器时,这些...

    Filter过滤器笔记1

    FilterChain代表过滤器链,用于协调多个Filter的执行顺序。当一个请求通过Filter时,会按照定义的顺序逐个调用下一个Filter的`doFilter()`方法,直到请求被完全处理或者被某个Filter拦截。 **五、Filter的拦截路径...

    SSH和SSI等框架常用基础配置web.xml

    通过`contextConfigLocation`参数指定多个XML配置文件路径,其中`classpath*:`表示从类路径下的指定目录中加载所有符合通配符规则的XML文件。这样,Spring容器在启动时会自动加载这些配置文件并初始化。 #### 三、...

    cors-filter-1.7.jar java-util-1.9.1.jar

    总的来说,这两个jar包在Tomcat服务器上协同工作,`cors-filter-1.7.jar`确保了跨域请求的安全和有效性,而`java-util-1.9.1.jar`则为开发者提供了更多的编程便利性。在实际项目中,正确配置和使用这些工具能显著...

    cors-filter-1.7.jar,java-property-utils-1.9.jar

    &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; ``` 以上配置允许所有来源的请求,并且支持多种HTTP方法。当然,这只是一个基础示例,实际生产环境中需要根据安全性和需求进行更具体的配置。 总结来说,"cors-...

    Web后端开发-使用Filter过滤器技术,实现访问量统计-方法二使用web.xml配置的方式

    `&lt;filter-mapping&gt;`则定义了Filter的映射规则,`&lt;url-pattern&gt;`元素指定了哪些URL请求需要经过这个Filter。 为了使统计持久化,我们可以将访问计数器保存在数据库或文件中,以便在服务器重启后仍能保留统计数据。...

    javaSSH框架搭建配置

    - `&lt;context-param&gt;`定义了Spring配置文件的位置,这里使用通配符`*`来匹配多个配置文件。 **2. 字符编码过滤器** 为了确保Web应用中数据的一致性和正确性,还需要配置字符编码过滤器。 ```xml &lt;!--Spring字符...

    cors-filter-1.7 + java-property-utils-1.10.zip

    &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; ``` 在上述示例中,`cors.allowed.origins`配置项设置为`*`,表示允许任何源进行跨域请求。你可以根据实际需求替换为具体的源地址,如`http://example.com`。 ...

    防止多用户登录同一帐号

    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;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt;

Global site tag (gtag.js) - Google Analytics