做個了系統。有添加頁面User_add.jsp和顯示使用者頁面User_list.jsp
添加中文的使用者名稱“我愛你”密碼“123”
在顯示頁面出項了亂碼,中文顯示異常
問題排查:
1.檢查資料庫,發現寫入的資料也是亂碼
亂碼有可能出在提交頁面
直接在資料庫將亂碼改成中文的資料
發現在User_list.jsp能顯示中文
charset 和pageEncoding改成z支援GB18030或者UTF-8,搞定
從新添加“我愛你”密碼123
成功顯示中文
PS:頁面預設charset=ISO-8859-1,以下為深入研究
1.當顯示頁面為charset=UTF-8" pageEncoding="UTF-8"%>
添加頁面
charset=utf-8"pageEncoding="ISO-8859-1"%>能正常寫入中文,顯示頁面正常
charset=ISO-8859-1"pageEncoding="UTF-8"%>資料庫顯示亂碼,但資料、顯示頁面正常
charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>寫入異常
charset=UTF-8" pageEncoding="UTF-8"%>正常
2.當顯示頁面為charset=ISO-8859-1" pageEncoding="UTF-8"%>
添加頁面
charset=utf-8"pageEncoding="ISO-8859-1"%>資料庫顯示亂碼,但資料顯示正常、顯示頁面亂碼
charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>資料庫顯示亂碼,但資料顯示正常、顯示頁面亂碼
charset=ISO-8859-1"pageEncoding="UTF-8"%>資料庫顯示亂碼,但資料顯示正常、顯示頁面亂碼
charset=UTF-8" pageEncoding="UTF-8"%>資料庫顯示亂碼,但資料顯示正常、顯示頁面亂碼
3總結
上述資料實驗所得,原理不詳
建議:所有頁面都設定成charset=UTF-8" pageEncoding="UTF-8"%>黃金搭檔、