關于Weblogic GBK/GB2312/UTF-8亂碼的問題
最近,頻繁聽到很多關于Weblogic亂碼的問題,其實,都是一些個人認為比較容易避免的問題。
1,如果是開發階段的亂碼,比如從屏幕上看到了一堆亂七八糟的編碼
嘗試在weblogic.xml文件的<jsp-descriptor>部分加入下面的描述:
? <jsp-descriptor>
?????? <jsp-param>
???????????? <param-name>compilerSupportsEncoding</param-name>
???????????? <param-value>true</param-value>
???????? </jsp-param>
???????? <jsp-param>
???????????? <param-name>encoding</param-name>
?????????????? <param-value>GBK</param-value>
???????? </jsp-param>
? </jsp-descriptor>
這樣,起碼會告訴Weblogic容器你的應用含有中文,比如JSP頁面,而它會善待你的JSP中的中文。
2,如果你是在Windows上面開發,然后部署到其他平臺,比如IBM AIX上,則你要注意encoding的問題,
即文件的Encoding。比如,通常來說,各位都是Eclipse之徒,默認Eclipse上面的文件格式是基于本地的字符集,
即GBK,你是用GBK存儲這些文件,甚至打包后想放到AIX上運行是不行的,解決方法太簡單了,
JAVA_OPTIONS=-Dfile.encoding=GBK
告訴AIX上的Weblogic上的IBM JVM,默認文件encoding不是utf-8,是GBK, 即可。
上面兩種方法,前者是針對中文編碼的識別問題,后者是針對文件編碼的識別問題,兩者是不一樣的。
在Java中,任何的內容都是以Unicode存在的,看Java程序中的內存,全部String都是Unicode,另外一個問題是,
假定這些String存儲成文件,則要考慮Unicode如何寫入到文件中,通常用的都是utf-8編碼來存儲。
posted on 2007-08-16 22:53 david.turing 閱讀(8150) 評論(0) 編輯 收藏 所屬分類: Java日積月累