您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關mysql jdbc中文亂碼怎么辦,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
mysql jdbc中文亂碼的解決辦法就是在jdbc url中明確設置characterEncoding屬性為utf8,代碼如“jdbc:mysql://host:port/dbname?characterEncoding=utf8”。
本文操作環境:Windows7系統、Mysql5.7版、Dell G3電腦。
jdbc mysql寫入中文亂碼解決
一. 問題
數據庫編碼:utf8
mysql> create database dbnameDEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
表編碼:utf8
drop table if exists `test`; create table `test` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', `name` varchar(50) default '', `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (`id`) )ENGINE=InnoDB DEFAULT CHARSET=utf8;
jdbc url:
url: jdbc:mysql://host:port/dbname
數據庫和數據庫表都已經使用了utf8編碼,但是插入中文數據時仍然亂碼。
二. 原因
在jdbc中連接mysql時,jdbc url參數中有一個屬性characterEncoding控制字符串編碼,該值默認為:autodetect。需要明確設置為utf8,可解決問題。
MySQL文檔解釋如下,詳見:https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html中"Setting Configuration Properties"部分詳細說明。
三. 解決辦法
在jdbc url中明確設置characterEncoding屬性為utf8。
url: jdbc:mysql://host:port/dbname?characterEncoding=utf8
關于“mysql jdbc中文亂碼怎么辦”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。