zhyiwww
          用平實(shí)的筆,記錄編程路上的點(diǎn)點(diǎn)滴滴………
          posts - 536,comments - 394,trackbacks - 0
          環(huán)境:java + oracle 10g + jdk 1.6 + Debian 4.0
          ??? 數(shù)據(jù)庫(kù)訪問(wèn),使用hibernate3.2
          想象:
          [1]oracle編碼
          select userenv('language') from dual;
          結(jié)果 :SIMPLIFIED CHINESE_CHINA.AL32UTF8?

          [2]tomcat日志輸出
          我的log4j輸出是中文,字符正常

          [3]log4j日志文件
          打開(kāi)log4j日志文件,也能正常顯示中文

          [4]JSP編碼
          <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

          我的分析
          [1]如果是數(shù)據(jù)的亂碼,那么在從數(shù)據(jù)庫(kù)檢索出數(shù)據(jù),輸出到日志的時(shí)候就應(yīng)該是亂碼,但是,日志輸出正常
          [2]如果說(shuō)是編碼不一致的問(wèn)題,我的數(shù)據(jù)庫(kù)編碼是SIMPLIFIED CHINESE_CHINA.AL32UTF8 我的頁(yè)面是UTF-8的編碼,應(yīng)該也沒(méi)有問(wèn)題
          如果有問(wèn)題,可能是AL32UTF8和UTF-8的編碼需要做一下處理,但是,這個(gè)我也搞不清楚。


          上面就是我的配置,但是,在從數(shù)據(jù)庫(kù)檢索出的數(shù)據(jù),在頁(yè)面上顯示的時(shí)候,還是亂碼。不知道是什么原因,那位朋友知道,麻煩指導(dǎo)一二。








          |----------------------------------------------------------------------------------------|
                                     版權(quán)聲明  版權(quán)所有 @zhyiwww
                      引用請(qǐng)注明來(lái)源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2009-02-03 11:19 zhyiwww 閱讀(2433) 評(píng)論(7)  編輯  收藏 所屬分類(lèi): j2ee

          FeedBack:
          # re: 令我頭疼的JSP亂碼問(wèn)題
          2009-02-03 13:15 | eeee
          建個(gè)過(guò)濾字符串的filter.就可以搞定了。
          加到你的web.xml里。  回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題[未登錄](méi)
          2009-02-03 14:05 | bluesky
          不知道你用的是什么應(yīng)用服務(wù)器,我們用的是tomcat,在conf/server.xml的Connector節(jié)點(diǎn)中添加一個(gè)屬性即可,URLEncoding="GBK"即可,一般不會(huì)出現(xiàn)亂碼的。你可以將GBK改為系統(tǒng)默認(rèn)的編碼即可,試試看。
            回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題[未登錄](méi)
          2009-02-03 14:06 | bluesky
          不好意思,好像是URIEncoding="UTF-8"  回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題
          2009-02-03 14:49 | 銀河使者
          AL32UTF8和UTF8類(lèi)似,只是高級(jí)的UTF-8,這不用轉(zhuǎn)換

          你先看看頁(yè)面上編碼的設(shè)置是否為UTF-8,還有就是看一下頁(yè)面的源代碼,用記事本打開(kāi),看盾能否正常顯示。從數(shù)據(jù)庫(kù)中取出的是UTF-8編碼的字符,如果頁(yè)面出現(xiàn)亂碼,有可能是使用了其他的編碼方式進(jìn)行了解碼。還是有就是看看你的web程序是不是什么地方用了GBK處理了。在發(fā)送到客戶端之前就成亂碼了。如response.setCharacter(...),或使用其他的方法處理的。  回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題
          2009-02-03 14:50 | 銀河使者
          還有就是URLEncoding=是處理服務(wù)端接收客戶數(shù)據(jù)時(shí)的亂碼的,這與頁(yè)面顯示亂碼無(wú)關(guān)。  回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題
          2009-02-04 22:06 | NJPaul
          亂碼問(wèn)題確實(shí)比較麻煩,不僅和jsp有關(guān),和數(shù)據(jù)庫(kù)以及操作系統(tǒng)都有關(guān)系。上面說(shuō)的修改tomcat的server.xml中的URIEncoding的方法是用來(lái)解決包含中文或日文文字的URL映射和下載文件時(shí)文件名中包含中文或日文的問(wèn)題的,所以應(yīng)該不是這個(gè)原因。在項(xiàng)目中配置一個(gè)文字Encoding的filter應(yīng)該可以解決問(wèn)題的,如果你的頁(yè)面什么的本身沒(méi)有問(wèn)題的話。不過(guò)具體的情況也可能更復(fù)雜,等答案……  回復(fù)  更多評(píng)論
            
          # re: 令我頭疼的JSP亂碼問(wèn)題[未登錄](méi)
          2009-02-05 18:34 | wolfsquare
          設(shè)置<@pageEncoding=UTF-8>  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 枞阳县| 南岸区| 始兴县| 道真| 安徽省| 丹阳市| 修武县| 广安市| 宜君县| 长阳| 石泉县| 丰镇市| 司法| 临夏县| 桂平市| 安乡县| 抚松县| 绥滨县| 阿合奇县| 仁布县| 卢氏县| 阿拉善右旗| 卓尼县| 金门县| 梁河县| 安泽县| 苍溪县| 龙井市| 宾阳县| 德安县| 拉孜县| 灯塔市| 芜湖县| 连平县| 施甸县| 册亨县| 定日县| 当雄县| 安顺市| 渝中区| 德格县|