通过mybatis读mysql中的中文数据idea控制台中显示乱码
试了无数个办法仍然无法解决
问题如图
已使用解决办法
1、先打印单个属性,比如genter,看看是否乱码?
2、如果乱码,对字符串进行转换,打印转换后字符串,查看是否乱码
3、查看控制台编码方式:https://jingyan.baidu.com/article/e9fb46e14190453421f766a5.html
utf8读取GBK的编码就会这样乱码。运行intl.cpl,管理,系统区域设置,取消勾选beta版,重启。
可以参考下这个http://t.csdn.cn/C6RZb
你的这几条数据是通过什么形式插入的?用mybatis插入新数据再读读看,排除下插入的数据就是乱码
你要保证你的IDE的编码,程序设置的编码,以及文件的编码,数据库的编码是统一的,才能不乱码,如果出现乱码,肯定是你这几个其中有编码和其他的不一样
看一下所有的编码格式是否一致
database.properties路径这么写
url=jdbc:mysql://192.168.153.135:3306/mybatisdb?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&characterEncoding
就可以识别中文了,要是还有不会得可以私聊我,我看到会回复你得
你应该查看一下 表 使用的什么编码
下面四种都设置一下 然后重启idea
1、IDEA设置中修改编码设置
2、修改IDEA安装文件idea64.exe.vmoptions修改
3、修改活动效果
4、Tomcat和IDEA控制台
乱码,一般都和设置相关,环境不同,仅供参考:
1、打开idea的设置,找到设置 编码的页面。菜单路径是File → Settings → Editor → File Encodings
在Configurations下,一个VM options: 添加 -Dfile.encoding=UTF-8,然后重启idea【这种是设置格式为UTF-8】
2、找到Tomcat的logging.properties配置文件。Tomcat安装目录 --> conf文件夹 --> logging.properties文件 --> 选择记事本打开。
把文件中所有的“encoding = UTF-8”,都改成“encoding = GBK”,一共五处,保存关闭。最后重新启动Tomcat。[这种是设置格式为GBK】
这个问题估计不好找,多半是编码不匹配
建议重新创建一个mysql数据库,设置字符集为utf8mb4,排序规则为utf8mb4_general_ci,配置文件的url写jdbc:mysql://xxx.xxx.xxx.xxx:3306/xxx?useSSL=false&useUnicode=true&characterEncoding=UTF8&allowMultiQueries=true&serverTimezone=UTC
这样再试一下
仅供参考:https://blog.csdn.net/weixin_44563573/article/details/102781540
排除你数据库原本存的就是乱码的情况,还有你给出的处理方案还是无效的话
还可以在数据库连接上做处理,看看改你的连接url可不可以 在地址里面加&characterEncoding=utf-8
例如:
spring:
datasource:
username: root
password: root
url: jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
```java
```
投机取巧,问了一堆问题没有采纳的
完成这三部试试: