Puock主题已经正式发售,一款颜值在线的多功能WordPress主题,赶快戳我来看看吧

使用UrlRewrite对JavaWeb的URL进行重写

4,379次阅读
12条评论

前言

在网上我们都见过很多类似于这样的页面:是动态的页面但是页面显示类型是静态的(比如本站),也就是后缀是.html或者.htm类型的,这种做法叫做伪静态,在JavaWeb(JSP)中实现此方法很简单,只需要一个包搞定,下面就来说说具体步骤。

正文

首先我们要下载urlwrite.jar包(本文下方有提供下载),接着导入到项目的lib目录,然后在项目的web.xml里面添加URL重写的过滤器。

<filter>
         <filter-name>UrlRewriteFilter</filter-name>
        <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
        <init-param>
            <param-name>confPath</param-name>
            <param-value>/WEB-INF/urlrewrite.xml</param-value>
        </init-param>
</filter>
<filter-mapping>
         <filter-name>UrlRewriteFilter</filter-name>
         <url-pattern>/*</url-pattern>
         <dispatcher>REQUEST</dispatcher>
</filter-mapping>

然后我们在web.xml同级目录下创建一个urlrewrite.xml,在其中写入重写规则:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN"
        "http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
    <urlrewrite>
    <rule>
        <from>/web/(.*)/(.*).html</from>
        <to>/WEB-INF/web/test.jsp?web=$1&amp;id=$2</to>
    </rule>
</urlrewrite>
在上方的重写规则中,当我们访问/web/cat/1.html的时候,实际上是请求的是/WEB-INF/web/test.jsp?web=cat&id=1,特别注意,在请求的参数中&不能直接这样写,要用&map;进行代替,否则不能带多个参数进行请求的

下载

 文件名称:urlrewrite-4.0.0.jar
 文件大小:469KB
 下载声明:本站部分资源来自于网络收集,若侵犯了你的隐私或版权,请及时联系我们删除有关信息。
 下载地址:http://pan.baidu.com/s/1pLzx3yb 密码:u22f

3
憧憬Licoy
版权声明:本站原创文章,由憧憬Licoy于2016年12月24日发表,共计1741字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(12条评论)
Loading...
redbomb 评论达人LV.1
2016-12-31 19:53:57 回复

:oops: 终于等到你这篇文章了…..新年快乐 :grin: :grin:

唯历史 评论达人LV.1
2016-12-29 22:48:21 回复

我会写asp.net的

凯哥自媒体 评论达人LV.1
2016-12-27 15:39:44 回复

马上元旦了,没准备干点儿啥呢

明月登楼的博客 评论达人LV.2
2016-12-25 14:17:47 回复

不错,过来点个赞支持一下先!

xema 评论达人LV.3
2016-12-24 21:20:09 回复

Merry Christmas! :grin: 圣诞快乐

虎子 评论达人LV.1
2016-12-24 20:42:41 回复

昨天使用301 .htaccess重定向 这个必须