首頁 >Java >java教程 >java向mysql資料庫插入資料顯示亂碼怎麼辦?

java向mysql資料庫插入資料顯示亂碼怎麼辦?

coldplay.xixi
coldplay.xixi原創
2020-06-13 09:18:473049瀏覽

java向mysql資料庫插入資料顯示亂碼怎麼辦?

java向mysql資料庫插入資料顯示亂碼怎麼辦?

java向mysql資料庫插入資料顯示亂碼的解決方法:

一、確保是否新增了字元集過濾器:

在java web工程中的web.xml裡,加入以下程式碼解決亂碼:

<filter>
        <filter-name>SpringEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>SpringEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

二、確保建立的資料庫是否設定支援中文,如下圖所示進行設定:

    java向mysql資料庫插入資料顯示亂碼怎麼辦?

三、如果仍亂碼,則就是mysql的編碼問題(mysql預設編碼為:latin1):

      1、檢視mysql編碼設定:

# 「運行」——>輸入「mysql」——>彈出mysql客戶端對話框——>以root身份進入mysql:

           進入後:輸入指令:"show variables like 'character% ';" 查看mysql字元編碼,結果如下:

         java向mysql資料庫插入資料顯示亂碼怎麼辦?  

說明不支援中文編碼,所做的操作是:

在mysql的安裝目錄下,找到「my.ini」(windows系統下後綴為ini, Mac系統下後綴為cnf, )的配置文件,以記事本方式打開:

找到客戶端配置[client],在下面添加“default-character-set=utf8”,然後找到[mysql] ,在下面加上“default-character-set=utf8”,然後搜尋“default-character-set”,把所有的default-character-set 都改為「utf8「(註:通常在改了[client]和[mysql]之後,其餘位置的也需要改),如下如圖所示:

       java向mysql資料庫插入資料顯示亂碼怎麼辦?

# 然後重啟mysql服務,再一次」 show variables like 'character%'; “查看mmysql字符編碼,結果如下所示:

 java向mysql資料庫插入資料顯示亂碼怎麼辦?

# 然後測試向資料庫添加數據,亂碼問題不再出現。

推薦教學:《JAVA影片教學

以上是java向mysql資料庫插入資料顯示亂碼怎麼辦?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn