加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql jdbc中文乱码怎么处理

发布时间:2023-04-22 14:37:03 所属栏目:MySql教程 来源:
导读:这篇文章将为大家详细讲解有关mysql jdbc中文乱码怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

mysql jdbc中文乱码的解决办法就是在jdbc url中明确设置character
这篇文章将为大家详细讲解有关mysql jdbc中文乱码怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
mysql jdbc中文乱码的解决办法就是在jdbc url中明确设置characterEncoding属性为utf8,代码如“jdbc:mysql://host:port/dbname?characterEncoding=utf8”。

本文操作环境:Windows7系统、Mysql5.7版、Dell G3电脑。
 
一. 问题
 
数据库编码: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
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!