博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UrlreWirte的使用
阅读量:4069 次
发布时间:2019-05-25

本文共 2501 字,大约阅读时间需要 8 分钟。

一、首先说一下UrlreWirte的用处

1.满足搜索引擎的要求。

2.隐藏技术的实现,提高网站的移植性。

二、关于“生成静态页与UrlreWrite重写的区别”请参考网址
三、UrlreWrite在项目中的使用
1.先导入urlrewrite.jar包,jar可以自己下载或者通过maven来管理
2.在项目WEB-INF目录下新建urlrewrite.xml文件,里面配置要跳转的代码,例如:

<?xml version="1.0" encoding="utf-8"?>   

<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN"    
   "http://tuckey.org/res/dtds/urlrewrite3.0.dtd">   

<urlrewrite>   

   <rule>   
             <from>/zt/ly/index.html</from>   
             <to>/front/topic/topic-showly.action?topicid=402b1ab9820002</to>   
       </rule> 
  <rule>   
     <from>/zt/ly/content/([0-9A-Za-z]+).html</from>   
            <to>/front/topic/topicalcontent1-list.action?topicid=$1</to>   
      </rule>   

    </urlrewrite>

   <!-- $1表明上面的传入的参数 具体怎么配置,我在下面说明-->

3.web.xml的配置

   <!-- UrlRewriteFilter filter -->

<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>
       </filter-mapping>

      <!--以上我只介绍了urlrewrite的配置,struts2的配置或者其他配置省略,其中UrlRewriteFilter filter的配置一定要在struts2的上面

   并且Struts2的配置中要加<dispatcher>FORWARD</dispatcher>这句-->

4.具体配置解释及应用

(1)不带参数,直接a标签连接即可 

urlrewrite.xml文件中
<rule><!-- 例如首页 -->                  
    <from>/zrar/infos/pa/index.html</from> 
           <to>/front/zrar/infoservice/projectapplication/index.action</to>   
</rule> 

说明:<from></from>中的url指的是你将要使用的url,<to></to>中的url是指原始的url或者一个action地址

            本来请求的action是如此的长,在浏览器里算是不美观吧,通过以上配置之后只要请求<from>中的url即相当于请求<to>中的action
jsp文件中这样编写: <a href=“${ctx}/zrar/infos/pa/index.html>中软安人</a> 即可。
(2)带一个参数的 

<rule><!--文章页-->

   <from>/zrar/infos/pa/content/([0-9A-Za-z]+).html</from>     
    <to>/front/zrar/infoservice/projectapplication/proContent-info.action?contentId=$1</to>   
</rule> 

说明:([0-9A-Za-z]+)是指穿过来的传过,这里用正则匹配了,<to>中通过$1在使用,1表示第一个,多个的会在下面讲到

jsp文件中这样编写: <a href=“${ctx}/zrar/infos/pa/content/<s:property value='id'/>.html>项目申报成功</a>
(3)带两个参数或者多个的,以下按2个参数讲解

<rule>  <!--首页最新可申报项目申报的市级链接-->

   <from>/front/zrar/pa/areaCode=([0-9A-Za-z]+)&proviceCode=([0-9A-Za-z]+).html</from>   
   <to>/front/zrar/partproject/ahead-project.action?procontentBean.areaCode=$1amp;         
       procontentBean.proviceCode=$2</to>   
</rule>

说明:以上需要传递两个参数过来,均以([0-9A-Za-z]+)表示,<to>中通过$1$2等引用使用,1表示第一个,一次类推。

     特别说明的是'&'符号需要用‘&’这样表示,直接用&是不正确的,但是网上有些文章没说明
jsp文件中这样编写: <a href=“${ctx}/zrar/pa/areaCode=<s:property  value="provinceCityId"/>&proviceCode=<s:property value="provinceCityParentId"/>.html>   
                                   <s:property value="provinceCityParentCode"/>*<s:property value="provinceCityCode"/></a>
红色的表示省市:浙江省*杭州市

5.至此urlrewrite介绍完毕,相信在不想生成过多静态页面的小网站可以值得一试,不用每次去生成静态页面,使用也比较方便。

附件下载:

转载地址:http://jshji.baihongyu.com/

你可能感兴趣的文章
【IntelliJ IDEA】idea导入项目只显示项目中的文件,不显示项目结构
查看>>
ssh 如何方便的切换到其他节点??
查看>>
JSP中文乱码总结
查看>>
Java-IO-File类
查看>>
Java-IO-java的IO流
查看>>
Java-IO-输入/输出流体系
查看>>
Java实现DES加密解密
查看>>
HTML基础
查看>>
Java IO
查看>>
Java NIO
查看>>
Java大数据:Hbase分布式存储入门
查看>>
Java大数据:全文搜索引擎Elasticsearch入门
查看>>
大数据学习:Hadoop入门学习书单
查看>>
大数据学习:Spark SQL入门简介
查看>>
大数据学习:Spark RDD操作入门
查看>>
大数据框架:Spark 生态实时流计算
查看>>
大数据入门:Hive和Hbase区别对比
查看>>
大数据入门:ZooKeeper工作原理
查看>>
大数据入门:Zookeeper结构体系
查看>>
大数据入门:Spark RDD基础概念
查看>>