大大毛 的筆記

            DDM's Note

          哪怕沒有辦法一定有說法,
          就算沒有鴿子一定有烏鴉,
          固執(zhí)無罪 夢想有價,
          讓他們驚訝.

          posts - 14, comments - 23, trackbacks - 0, articles - 58
             :: 首頁 ::  :: 聯(lián)系 ::  :: 管理

          Struts中文問題的暫時解決

          Posted on 2006-07-24 01:15 大大毛 閱讀(229) 評論(0)  編輯  收藏 所屬分類: Struts

          ???跟大家一樣,我在學習Struts的過程中,也不可避免的遇到這個問題,綜合網(wǎng)上說的再加上實踐,暫時有了解決方案(說它暫時是不知道各種情況下都能適用),反正以后遇到例外再改吧.

          ???解決問題的核心就是要統(tǒng)一使用Unicode編碼(UTF-8)需要從以下幾個方面著手
          ??????1.JSP頁面編碼
          ?????????這個較容易搞定,只需要指定頁面的contentType="text/html;charset=UTF-8"即可
          ??????2.資源文件編碼
          ?????????這個是針對國際化來講的,如果只有E文的資源,那是不可能出問題的,如果有其它語種的資源文件,需要進行編碼,如果手工做的話需要用到 JDK/lib 目錄下的 native2ascii.exe 工具進行命令行的操作,Eclipse下省心的方法也有,就是去下個插件
          JInto ,讓"國際化"的大師們來做這些民工活好了,這個插件還可以對照著多語種進行資源文件的編輯,easy啊.
          ??????3.頁面輸入編碼
          ?????????說具體點就是從JSP頁面form提交上去的中文數(shù)據(jù),回顯及插入到數(shù)據(jù)庫中都成了亂碼,這個我在網(wǎng)上查了,有說用Fileter的,不過看著就挺麻煩啊,有個挺簡單的解決方法就是用自己的ActionServlet替換缺省的那個,具體操作是:
          ?????????(1)定義一個類,讓它extends ActionServlet ,覆蓋process方法

          protected ? void ?process(HttpServletRequest?request,?HttpServletResponse?response)? throws ?java.io.IOException,?javax.servlet.ServletException?{

          ???????request.setCharacterEncoding(
          " utf-8 "
          );???
          ???????
          super
          .process(request,?response);??
          ????}

          ?????????(2)修改web.xml文件中的<servlet-class>元素,把這個標簽的內(nèi)容指向自己的類;

          ???到此問題解決,不過我在使用中也注意到一個有趣的現(xiàn)象,運行后生成的Web頁面有一個特點,就是從IE的 "查看/編碼方式" 上可以看到IE自動使用的是UTF-8編碼,而你如果換成 "簡體中文GB2312"的話得到的將是一個亂碼頁面

          i am ddm

          主站蜘蛛池模板: 综艺| 凤庆县| 南康市| 遵义市| 社旗县| 凤阳县| 威远县| 迁西县| 耒阳市| 普格县| 清苑县| 三河市| 扎兰屯市| 周宁县| 邹城市| 田阳县| 平南县| 广东省| 卓尼县| 合作市| 邹城市| 潞城市| 进贤县| 阳泉市| 亚东县| 桃源县| 四平市| 洛南县| 武宁县| 西和县| 呼和浩特市| 秦皇岛市| 宣威市| 安庆市| 秭归县| 海晏县| 宣武区| 花莲县| 旌德县| 同江市| 汪清县|