gembin

          OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

          HBase, Hadoop, ZooKeeper, Cassandra

          Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

          There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

          About Me

           

          JSP使用URLRewirte實現url地址偽靜態化(轉)

          URL:http://urlrewritefilter.googlecode.com/svn/trunk/src/doc/manual/3.1/index.html
          URLRewirte的用處:
          1.滿足搜索引擎的要求
          2.隱藏技術實現,提高網站的移植性
          3.滿足美感的要求(個人感覺這個用處太牽強)
          項目部署
          1.首先在http://tuckey.org/urlrewrite/下載urlrewirtefilter
          2.解壓所下載的文件,把urlrewrite-2.6.0.jar復制到項目的WebRoot/WEB-INF/lib/目錄下,然后編譯
          3.把urlrewrite.xml復制到項目的WebRoot/WEB-INF/目錄下
          4.在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>
          5.需要配置urlrewrite.xml文件來實現url靜態化,下面將詳細說明
          到這里相關的配置已經完成,下面看如何把動態地址靜態化
          1.普通url靜態化
          例如:要把http://localhost/prjtest/user/list.jsp轉換成http://localhost/prjtest/user/list.html
          這種是最簡單的,當一個servlet跳轉到list.jsp頁面列出user列表時,在urlrewrite.xml中這樣配置:
          <rule>
          <from>^/user/list.html</from>
             <to>/user/list.jsp</to>
          </rule>
          當請求/user/list.html這個頁面時,實際上相當于請求/user/list.jsp頁面
          在servlet的跳轉要這樣寫:
          response.sendRedirect("./user/list.html");
          2.帶參數的url靜態化
          例如:要把http://localhost/prjtest/user/view.jsp?cid=1&cname=admin轉換成
                 http://localhost/prjtest/user/view/1_admin.html
          在urlrewrite.xml中這樣配置:
          <rule>
          <from>^/user/view/([0-9]+)_([a-z]+).html$</from>
          <to>/user/view.jsp?cid=$1&amp;cname=$2</to>
          </rule>
          當請求/user/view/1_admin.html這個頁面時,實際上相當于請求/user/list.jsp?cid=1&cname=admin頁面
          在servlet的跳轉要這樣寫(cid,cname為變量):
          response.sendRedirect("./user/view/"+ cid +"_"+ cname +".html");
          注意:配置文件中用"&amp;"來代替"&"

          一個通用的正則表達式:[a-zA-Z0-9]+



          posted on 2008-05-27 00:44 gembin 閱讀(1325) 評論(0)  編輯  收藏 所屬分類: JavaEE

          導航

          統計

          常用鏈接

          留言簿(6)

          隨筆分類(440)

          隨筆檔案(378)

          文章檔案(6)

          新聞檔案(1)

          相冊

          收藏夾(9)

          Adobe

          Android

          AS3

          Blog-Links

          Build

          Design Pattern

          Eclipse

          Favorite Links

          Flickr

          Game Dev

          HBase

          Identity Management

          IT resources

          JEE

          Language

          OpenID

          OSGi

          SOA

          Version Control

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          free counters
          主站蜘蛛池模板: 浑源县| 周口市| 凤山县| 石狮市| 高密市| 平原县| 江门市| 宁夏| 吴堡县| 樟树市| 临洮县| 兴隆县| 大理市| 浦城县| 深泽县| 乌拉特后旗| 临颍县| 萍乡市| 平山县| 宿迁市| 富阳市| 莆田市| 喀喇沁旗| 邮箱| 琼结县| 米林县| 竹山县| 浦北县| 抚松县| 得荣县| 永吉县| 曲麻莱县| 泰安市| 眉山市| 玛纳斯县| 罗源县| 崇仁县| 景洪市| 萨嘎县| 勃利县| 铁力市|