1.demo中最常見的方式是在工程下的web.xml中設置(有時候根據業務可能需要設置action,在action中處理邏輯載入跳轉什麼的,比較少): 2.使用Urlrewrite地址重寫,優點還是挺多的,比如安全性能,具體可以百度下,下麵介紹使用方式: 首先還是導入 urlrewrite 的jar ...
1.demo中最常見的方式是在工程下的web.xml中設置(有時候根據業務可能需要設置action,在action中處理邏輯載入跳轉什麼的,比較少):
<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
2.使用Urlrewrite地址重寫,優點還是挺多的,比如安全性能,具體可以百度下,下麵介紹使用方式:
首先還是導入 urlrewrite 的jar包,在web.xml中配置
<!-- urlRwrite過濾器--> <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> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> </filter-mapping>
然後在WEB-INF目錄下 新建 urlrewrite.xml
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN" "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd"> <urlrewrite decode-using="UTF-8"> <!-- 規則自己定義 實現URL的重寫 之前項目上的,這裡簡單看下,理解即可 --> <outbound-rule encodefirst="true"> <from>/service/login/login</from> <to>/</to> </outbound-rule> <outbound-rule encodefirst="true"> <from>^(.*);jsessionid=.*$</from> <to>$1</to> </outbound-rule> <outbound-rule match-type="wildcard"> <from>*;jsessionid=*</from> <to>$1</to> </outbound-rule> <rule> <from>/$</from> <to>/service/login/login</to> </rule> </urlrewrite>View Code
簡單說下:
UrlRewrite匹配模式:正則表達式和通配符匹配
rule 是主要規則節點,from 和to是它下麵的兩個子節點,from:請求的URL,to:轉到的真實的URL。
其他的看下UrlRewrite文檔可以更好的理解