下面是我最近作個小項目遇到的中文問題,如有不當之處,還請各位大蝦指正
1)普通的頁面顯示問題,在最前面加入三行代碼:
<%@ page pageEncoding="gb2312"%>
<%@ page contentType="text/html;charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
基本上所有頁面顯示問題都可以搞定。
2)插入數據庫
String correctdes = new String(descrip.getBytes("ISO8859_1"),
"GB2312");
用此行代碼將ISO8859_1轉換成GB2312,插入就不是亂碼了。
3)數據庫中文查詢
比如說有個queryByName(String name)函數,
在裏面加入下列代碼就可以。
byte[] bytesISO = name.getBytes("ISO8859_1");
String newName = new String(bytesISO, "GB2312");
然後
List list = session.createQuery(
"from Teacher teacher where teacher.teacName =:name").setString("name",newName).list();