读书人

施用urlrewrite重写struts2的action

发布时间: 2012-09-17 12:06:51 作者: rapoo

使用urlrewrite重写struts2的action
首先呢是导入jar包,这个jar我是找很久了,别人给的链接我访问不到,就csdn上有。可是呢,csdn下东西要积分,你懂得。
下面给了一个jar和xml文件。
首先修改web.xml:

 <!-- ===================== -->     <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--struts-cleanup--struts
在struts-mapping配置这个属性
<dispatcher>FORWARD</dispatcher>

然后是urlrewrite.xml:
<rule><from>/1.html</from><to type="forward">/manage/BlockManage_findBlockList.do</to></rule><rule><from>/t/(\d+)/([a-z]+).HTML$</from><to type="forward">%{context-path}/manage/HospitalManage_toUpdateHospital.do?id=$1&name=$2</to></rule>

只给出2个例子。
其中XXX.do就是访问的action...$1是第一个参数,$2是第二个参数....
&符号要转成&别忘了;号
上面的()括号里面就是匹配参数的正则
<form></form>之间是自定义的url
<to></to>之间是实际url.
如果要想地址栏显示自定义的url就在to标签加入type="forward"属性
对应的链接地址
<a href="t/${item.id}/${item.name }.HTML" >更新</a>


读书人网 >Web前端

热点推荐