在做web開發時(本人用jsp做開發,資料庫用的mysql,其他開發方式可能稍有不同,但原理是一樣的),向資料庫中插入中文時出現亂碼現象。這個現象跟很多環節有關係,但最根本的是要選擇一種支援中文的編碼,且各個地方的編碼都要保持一致。這些地方主要包括資料庫的編碼,jsp頁面**請求的編碼,資料庫連線時的編碼。具體如下:
1、建立資料庫的時候要選好一種支援中文的編碼,可以選gbk、gb2312、utf-8,選好後其他地方的編碼都盡量與這裡的一樣,這裡就以utf-8為例說明。
2、在進行jsp頁面**區,將頁面中凡是涉及到編碼的地方都設定成與上述資料庫同一編碼。為了避免不同瀏覽器支援不同編碼的問題,可以在每個頁面的開始處(可以放在標籤前面)都加一條設定請求**的編碼,具體如下:
<%
request.setcharacterencoding("utf-8");
%>
這樣就能保證對傳送的請求按照設定好的編碼傳過來,這解決了頁面直接傳遞中文時出現亂碼的問題,以下則解決插入資料庫時亂碼的問題。
3、當頁面的編碼和資料庫的編碼都相同的時候,就能保證中文資料傳過來是正確的,但要保證插入時也正確,還要設定連線資料庫時的編碼。具體語句如下(連線的是mysql資料庫):
public class db catch (exception e)
return con;}}
以上為連線資料庫的db類,以上紅色字型部分為設定相應的連線編碼。
總結:進行web開發的時候,如果要避免中文亂碼的問題,則盡量將各個環節的編碼統一或者是可相容,這樣才能保證不出現亂碼。
向資料庫插入中文時出現亂碼
在做web開發時 本人用jsp做開發,資料庫用的mysql,其他開發方式可能稍有不同,但原理是一樣的 向資料庫中插入中文時出現亂碼現象。這個現象跟很多環節有關係,但最根本的是要選擇一種支援中文的編碼,且各個地方的編碼都要保持一致。這些地方主要包括資料庫的編碼,jsp頁面 請求的編碼,資料庫連線時的編...
PHP向mysql資料庫插入中文顯示亂碼
檢視資料庫編碼方式 查詢 show variables like character 設定 set character set server utf8 設定html頁面編碼 php檔案編碼設定 訊息頭部 header content type text html charset utf 8 資料庫連...
JSP向MySQL資料庫中寫入中文字元亂碼問題
搞了一下午,各種發發都嘗試了,filter過濾器.等等 都用了,但是就是寫入的資料亂碼 最後終於成功,分享出來 給有用的人.1.首先要改一下tomcat servers 其中的connector 後面都加上 uriencoding utf 8 2.改一下mysql 安裝目錄下的 my.ini檔案 c...