高防服务器

mysql jdbc中文乱码怎么办


mysql jdbc中文乱码怎么办

发布时间:2021-12-26 08:48:49 来源:高防服务器网 阅读:75 作者:小新 栏目:MySQL数据库

这篇文章将为大家详细讲解有关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中文乱码怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[