JAVA WEB 项目中整合UrlRewrite地址重写

这里介绍下怎么在java web项目中增长urlRewrite 过滤器,来实现地址重写:java

  1. 在你的项目WEB-INF/lib 中增长UrlRewrite的jar包,下载地址: urlrewritefilter-4.0.3.jar 或者web

    使用maven 的方式:app

<dependency>
    <groupId>org.tuckey</groupId>
    <artifactId>urlrewritefilter</artifactId>
    <version>4.0.3</version>
</dependency>

    2.在WEB-INF/web.xml 文件中加入:maven

            

<filter>
    <filter-name>UrlRewriteFilter</filter-name>
    <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>UrlRewriteFilter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>

注意:加入过滤器后,须要在struts的过滤器中增长一下代码,要否则配置好了,你会发现一直出现404错误。svn

<filter>
    <filter-name>struts</filter-name>
    <filter-class>com.xx.web.struts.MyStrutsFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
  </filter-mapping>

3.在WEB-INF 中增长urlrewrite.xml 文件。google

4.重启服务就ok了。url

注意:在重写一个可能会传多个参数的地址时须要这样写:spa

<rule>
 <note>过滤查找商家的地址并分页</note>
 <from>^/ouralliances/([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)(\/?)$</from>
 <to>/web/WebAction_ourAlliance?rid=$1&amp;cid=$2&amp;aid=$3&amp;pageNum=$4</to>
</rule>

这里的链接符是:"&amp;",而不是"&"

code

相关文章
相关标签/搜索