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 閱讀(1311) 評論(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
          主站蜘蛛池模板: 资兴市| 茂名市| 南京市| 故城县| 博罗县| 思茅市| 田林县| 宁安市| 清水县| 沁源县| 海丰县| 兴义市| 湄潭县| 尼勒克县| 大名县| 巩义市| 新宁县| 深圳市| 华蓥市| 剑阁县| 绿春县| 黑水县| 博爱县| 无锡市| 中西区| 商城县| 饶河县| 庆阳市| 南澳县| 金寨县| 兴安盟| 宜川县| 永新县| 灵寿县| 贡嘎县| 大丰市| 修武县| 雷波县| 商洛市| 呼图壁县| 长海县|