如何徹底解決jsp頁面中文亂碼及資料庫亂碼

2022-02-05 12:51:02 字數 1288 閱讀 6478

最近自己閒做乙個小專案,搭建環境框架ssh+mysql資料庫,遇到乙個問題:jsp頁面中文顯示亂碼,資料庫插入資料和更新資料時中文也顯示亂碼,後來在網上找了許多解決方法,還是折騰了兩天才把問題解決,下面總結一下徹底解決中文亂碼問題:

在專案裡的我統一使用utf-8的編碼方式

1、知道自己安裝mysql資料庫安裝配置時選擇了什麼編碼方式,如果之前安裝,現在不太清楚,建議重新安裝mysql資料庫,安裝配置時選擇utf8

(這裡有個小技巧:不用解除安裝mysql資料,找到安裝mysql資料庫目錄:d:\mysql server 5.1\bin下的mysqlinstanceconfig.exe,雙擊執行可以進行重新配置安裝,並選擇utf8編碼方式),如圖

2、安裝成功後,檢視編碼方式,sql命令如下:

這裡的所有編碼方式都要統一為utf8,若某乙個不是utf8的編碼方式,就要設定為utf8,sql命令如下:set character_set_results=utf8

3、建立資料庫並指定資料庫的編碼方式,sql命令如下:

create database yourdb character set utf8;

4、建立資料庫表,也要指定其編碼方式

5、如果你的mysql版本是5.0以下,則還需要在hibernate.cfg.xml配置裡面url指定資料庫訪問連線時的編碼方式:

如:url=jdbc:mysql://localhost/db?user=user&password=123456&useunicode=true&characterencoding=utf8

如果mysql版本是5.0以上,這裡的url加不加?user=user&password=123456&useunicode=true&characterencoding=utf8 都沒關係

6、寫乙個字元編碼的過濾器,編碼方式也要保證跟mysql的字符集一致為utf-8

7、所有jsp頁面指定編碼格式,保證跟mysql的字符集一致為utf-8

注意:頁面裡面大小寫統一,如,不能是pageencoding="utf-8",contenttype="text/html; charset=utf-8",新增資料頁面也要跟顯示資料頁面的編碼格式要保持一致,不然的話就會出現新增到資料庫中沒亂碼,從資料庫中顯示出現亂碼的情況

徹底解決Oracle中文亂碼

服務端字符集 作業系統字符集 nls lang字符集 select from nls database parameters locale export american america.al32utf8 en us.utf 8 american america.zhs16gbk create ta...

徹底解決mysql中文亂碼

檢視資料庫編碼 show variables like char 修改字元編碼 set character set server utf8 set character set database utf8 show variables like char global範圍 mysql設定變數的範圍預設...

徹底解決springMVC中文亂碼

一 頁面編碼 二 url中的亂碼改tomcat中server.xml中connector的port 8080 加上乙個 uriencoding utf 8 三 配置過濾器,指定所有請求的編碼 1 配置spring的編碼過濾器,為了防止spring中post方式提交的時候中文亂碼,方法 修改web.x...