jsp(JAVA)伪静态的具体设置过程

一:到  http://tuckey.org/urlrewrite/  下载urlrewrite架包(推荐2.6.0)

二:解压所下载的文件,把urlrewrite-2.6.0.jar复制到项目的WebRoot/WEB-INF/lib/目录下

三:把urlrewrite.xml复制到项目的WebRoot/WEB-INF/目录下

四:在web.xml文件中加入以下

<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

 

(UrlRewriteFilter这个可以更改,但是如果要更改的话,就两个UrlRewriteFilter都一起改为相同的字符串,比如说都改为:aaa也是可以的!其实这个在urlrewrite.xml里有说明,仔细看看就知道了!哦,忘了,上面这段代码加到: </welcome-file-list> 之后,)

五:接下来就是urlrewrite.xml里面的规则的写法了

1,单页面规则写法:(记得不要把项目名写到里面去了!)

<rule>
<from>^/index.html</from>
<to>/index.jsp</to>
</rule>

 

2,带一个参的URL规则写法

把:showNews.jsp?id=参数 伪成:shownews_参数.html

<rule>
<from>^/shownews_(.[0-9]*).html</from>
<to>/showNews.jsp?id=$1</to>
</rule>

 

()里面是正则表达式,自己去找找这方面的知识,美元符号$1的意思是匹配第一个正则表达式

3,带两个参和多个参的URL规则写法

把showNews.jsp?id=参1&type=参2伪成news-参1-参2.html

<rule>
<from>^/news-(.[0-9]*)-(.[0-9]*).html</from>
<to>/showNews.jsp?id=$1&amp;type=$2</to>
</rule>

 

注意一点:用 “&amp;”来代替”& “,多个参的url规则基本类似,依葫芦画瓢,应该能写出来!哦,还有一点,那就是jsp页面上的url的写法,href=”shownews_<%=news.getNewsID() %>.html”,如果前面加项目名的话,就再多加个”/”,JSP用urlrewrite实现伪静态就这么些步骤!慢慢去摸索,自己摸索出来的,估计这一生都不会忘记!

你可能感兴趣的:(java,jsp,Web,xml,正则表达式)