java中url重写使用记录(已测试能使用)


1.url重写运用的maven加入相关依赖


        <dependency>
            <groupId>org.tuckeygroupId>
            <artifactId>urlrewritefilterartifactId>
            <version>4.0.4version>
        dependency>

2配置web.xml相关导入

    <filter>
        <filter-name>UrlRewriteFilterfilter-name>
        <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilterfilter-class>
        <init-param>
            <param-name>encodingparam-name>
            <param-value>UTF-8param-value>
        init-param>
    filter>
    <filter-mapping>
        <filter-name>UrlRewriteFilterfilter-name>
        <url-pattern>/*url-pattern>
        <dispatcher>REQUESTdispatcher>
        <dispatcher>FORWARDdispatcher>
    filter-mapping>

3.新建urlrewrite.xml文件,以及创建位置如图

 创建好后相关配

<?xml version="1.0" encoding="utf-8"?>
DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
        "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<urlrewrite>
    
    <rule>
        <from>([a-zA-Z0-9 ]+)/([a-zA-Z0-9 ]+).htmlfrom>  
        <to>mip/mipInfo?gid=$2&dir=$1to> 
    rule>
    <rule>
        <from>gonglue/list([a-zA-Z0-9 ]+)_([a-zA-Z0-9 ]+).htmlfrom> 
        <to>mip/mipList?type=$1&pageNum=$2to> 
    rule>
urlrewrite>

4.已经配置完毕,最后就是测试了(如图就测试完毕了,正常访问ok了)

5.最后就是总结了,其实这个就是添加了一过滤器运用而已,过滤器中解析url之后映射到指定接口处理,处理之后返回url,过滤器可以重新配置相关url展示到浏览器中(这个就是伪静态的设计原理吧)

6.运用时注意优先级的处理,一般情况是找到了匹配的就直接跳转了,这个是重点