<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ゞ沉默是金ゞ

    魚離不開水,但是沒有說不離開哪滴水.
    posts - 98,comments - 104,trackbacks - 0
            Tomcat是Java開發者使用得較多的一個Web服務器,因為它占用資源小,運行速度快等特點,深受Java Web程序員的喜愛。不過,在使用中,由于Java中的中文問題的存在,如果不經過配置,在WEB程序中,不能直接支持具有中文文件名的文件的下載,這為Java Web程序的開發帶來一定的不便。本文擬介紹一種手段,解決這個問題。

            解決問題的核心在于修改Tomcat的配置,在Server.xml文件中添加一個名為URIEncoding的屬性,它用于對HTTP請求中的get方法傳過來的URL進行編碼。如果直接從Apache站點中下載Tomcat,無論是安裝版的exe文件,還是解壓縮的ZIP文件,內置的對于get協議中的URL編碼都是ISO-8859-1,這個字符集不能直接支持中文等雙字節的信息,而中文文件的下載鏈接恰恰是通過get協議進行的。以下說明修改Tomcat安裝目錄中的config文件夾中的server.xml文件的方法。

       打開config/server.xml文件,如果沒有修改過這個文件,應該可以在其中找到如下代碼:
      
       <Connector port="8080"  protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
      
       這段代碼規定了Tomcat監聽HTTP請求的端口號等信息,可以在這里添加一個屬性:URIEncoding,將該屬性值設置為UTF-8,即可讓Tomcat不再以ISO-8859-1的編碼處理get請求。更改后的代碼如下所示(紅色部分為新添加的代碼):
     
      <Connector port="8080"
                 URIEncoding="utf-8"
                 protocol="HTTP/1.1"
                 connectionTimeout="20000"
                 redirectPort="8443" />
     
      下面,我們準備測試一下更改后的效果。

       最為簡單的測試方法就是讓Tomcat自己列出WEB程序中的目錄和文件,默認情況下,Tomcat不會直接列出WEB程序目錄中的文件和文件夾,但是,我們可以修改位于安裝目錄中的config文件夾中的web.xml,使其能夠支持自動列出WEB程序中的目錄和文件。
       在config/web.xml文件中找到如下代碼:
      
        <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
          <param-name>debug</param-name>
          <param-value>0</param-value>
        </init-param>
        <init-param>
          <param-name>listings</param-name>
          <param-value>false</param-value>

        </init-param>
        <load-on-startup>1</load-on-startup>
      </servlet>
      
       將上面的代碼中標為紅色的部分改為如下內容:
     
       <init-param>
          <param-name>listings</param-name>
          <param-value>true</param-value>
       </init-param>
      

       即將參數listings的屬性改為true,就可讓Tomcat自動列出某個WEB程序目錄中的文件和文件夾。

       現在,我們的設置已經完成,將修改的文件保存后,就可以啟動Tomcat進行測驗了,當然,如果Tomcat正在運行,則需要重新啟動,以便配置生效。

       現在,可以在Tomcat安裝目錄中的webapps目錄中建立一個名為cntest的文件夾,作為測試的web程序的上下文路徑(注意:對于WEB程序的上下文路徑,請不要使用中文)。請在cntest中添加一些中文目錄和文件,然后在瀏覽器中打開該WEB程序,如,http://localhost:8080/cntest,測驗一下效果吧。當然,也可以在JSP或HTML文件中使用那些包含中文的文件夾或文件名的超級鏈接。

       說明:以上修改均使用Tomcat5.5做的測試,在5.5以上都應該可以,至于5.0和4.x,我沒有實驗過,不過對于5.0應該也是可以的,但4.x不能保證(4.x在處理HTTP的get和post方法和5.x不大一樣)。
    posted on 2009-06-19 15:36 ゞ沉默是金ゞ 閱讀(1349) 評論(1)  編輯  收藏 所屬分類: Java EE

    FeedBack:
    # re: 讓Tomcat支持中文路徑名和中文文件名
    2009-06-21 19:50 | GreatGhoul
    這小技巧可真不好找。  回復  更多評論
      
    主站蜘蛛池模板: 成年女人A毛片免费视频| 久久精品国产免费观看三人同眠| 国产亚洲精品精华液| 97av免费视频| 亚洲jizzjizz少妇| 国产av无码专区亚洲av果冻传媒 | 亚洲国产精品无码久久久秋霞1| 亚洲AV中文无码乱人伦在线视色| 久久午夜无码免费| 亚洲日韩亚洲另类激情文学| 亚洲线精品一区二区三区| 在线视频免费观看爽爽爽| 人妻仑刮八A级毛片免费看| 亚洲电影免费观看| 亚洲精品无码久久不卡| 成年黄网站色大免费全看| 一级毛片视频免费观看| 中文字幕在线观看亚洲视频| 亚洲熟女一区二区三区| 性色av免费观看| 91人成网站色www免费下载| 一级毛片免费在线观看网站| 久久久久国产精品免费看| 亚洲gay片在线gv网站| 亚洲美女大bbbbbbbbb| 亚洲综合色婷婷七月丁香| 免费的一级片网站| 亚洲免费黄色网址| 在线看片免费人成视频久网下载| 亚洲日本VA午夜在线电影| 亚洲综合激情另类小说区| 亚洲精品乱码久久久久久蜜桃不卡| 成人黄动漫画免费网站视频 | 免费在线视频一区| 成年午夜视频免费观看视频 | 91短视频在线免费观看| 老司机精品免费视频| 校园亚洲春色另类小说合集| 亚洲人成77777在线观看网| 337p日本欧洲亚洲大胆艺术| 亚洲国产精品va在线播放|