JSP 中文問題(找了好多文章還是不行)

raulliran發表於2007-08-03
環境: mysql4.1+tomcat5.5+netbeans5.5.1+JDK1.6

<%@ page contentType="text/html; charset=gb2312" %>
<%request.setCharacterEncoding("GB2312");%>
mysql的字符集定義也是GB2312

在資料庫後臺手動新增中文資料,在JSP頁面查詢資料庫,中文正常顯示.
但是從瀏覽器輸入中文或者在JSP定義中文字串,然後插入資料庫,資料庫裡就顯示亂碼(一堆問號)

我試圖瞭解傳過來的字符集到底是什麼編碼,程式碼如下:
<%
byte[] temp1;
temp1 = ChieseString.getBytes("ISO-8859-1");
String compstring1;
compstring1 = new String(temp1);
if(ChieseString.equals(temp1)){
out.println("ISO-8859-1");
}
%>
窮舉了所有的字元,但是結果是都不輸出.也就以為這ChieseString不屬於任何編碼,但也許是程式碼的問題

總之從資料庫讀沒有問題,但是要寫入資料庫,輸入的內容如果是中文就是一堆問號
我不明白問題出在哪
以前我用過SQL SERVER的資料庫,當時只要用下面的程式碼就能解決,可是現在也不行
<%! //漢字處理,去除亂碼
public String getString(String s) {
if(s==null) {
s="";
}
try{
byte b[]=s.getBytes("ISO-8859-1");
s= new String(b,"gb2312");
}catch(Exception e) {
}
return s;
}
%>

我真的是沒招了~~~~~~~~ :-(

相關文章