摘要:mysql jdbc中文乱码的解决办法就是在jdbc url中明确设置characterEncoding属性为utf8,代码如“jdbc:mysql://host:port/dbname?characterEncoding=utf8”。本文操作环境:Windo
mysql jdbc中文乱码的解决办法就是在jdbc url中明确设置characterEncoding属性为utf8,代码如“jdbc:mysql://host:port/dbname?characterEncoding=utf8”。
本文操作环境:Windows7系统、Mysql5.7版、Dell G3电脑。
如何解决mysql jdbc中文乱码问题?
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视频教程》
相关文章推荐
网站谷歌评分90+意味着什么?2022-09-06
怎样将不安全网站变成安全网站访问?2022-09-26
网站排名下降,可能跟算法更新没关系2022-09-20
网站如何设置高质量的网页标题?2022-09-14
做外贸网站选哪些语言?法语、德语最吃香2022-09-13