看到别人的网站网址名都不带后缀名比较酷,比如qq空间的地址,其实用urlrewrite这个包很容易就实现了。 

下面是使用说明:

1.下载urlrewrite,

2.解压缩文件,压缩包内文件copy到项目中(压缩包位置 -> 项目位置): 

 

 其次,在web.xml中加入如下配置:

  1. <filter> 
  2.  <filter-name>UrlRewriteFilter</filter-name> 
  3.  <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class> 
  4.  <init-param> 
  5.  <param-name>logLevel</param-name> 
  6.  <param-value>WARN</param-value> 
  7.  </init-param> 
  8.  </filter> 
  9.  <filter-mapping> 
  10.  <filter-name>UrlRewriteFilter</filter-name> 
  11.  <url-pattern>/*</url-pattern> 
  12.  <dispatcher>REQUEST</dispatcher> 
  13.  <dispatcher>FORWARD</dispatcher> 
  14.  </filter-mapping> 
     

 其实,urlrewrite其实就是个过虑器,它将会过虑用户的所有请求,符合规则的便对其进行重定向,

 

  1. <?xml version="1.0" encoding="utf-8"?>    
  2. <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN"    
  3. "http://tuckey.org/res/dtds/urlrewrite2.6.dtd">    
  4.    
  5.   
  6. <urlrewrite>    
  7.     <rule>    
  8.         <from>^/([a-z]+)$</from>    
  9.         <to type"forward" >/world.jsp?id=$1</to>    
  10.     </rule>    
  11.     <rule>   
  12.         <from>^/world/(.*)$</from>   
  13.         <to>/world.jsp?tid=$1</to>   
  14.     </rule>   
  15.     <rule>   
  16.         <from>^/(.*).html$</from>   
  17.         <to>/test1/$1.jsp</to>   
  18.     </rule>   
  19.        
  20.     <outbound-rule>    
  21.         <note>    
  22.         The outbound-rule specifies that when response.encodeURL is called (if you are using JSTL c:url)    
  23.         the url /rewrite-status will be rewritten to /test/status/.    
  24.            
  25.         The above rule and this outbound-rule means that end users should never see the    
  26.         url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks    
  27.         in your pages.    
  28.         </note>    
  29.         <from>/rewrite-status</from>    
  30.         <to>/test/status/</to>    
  31.     </outbound-rule>   
  32. </urlrewrite>    


rule是url重写规则,from是显示出来的地址,to是映射的实际地址,$1是重写参数,可以为多个,()里是匹配的正则表达式.


http://localhost:8080/mysite/world/1 

mysite是你的项目名 

实际上访问的是http://localhost:8080/mysite/world.jsp?tid=1 
这样就简单的实现了伪静态的效果