04 mysql数据库读取数据乱码的处理

有些时候我们会发现jdbc或者mybatis或者hibernate从数据库中读取出来的数据是乱码,这种方式该如何处理呢?

1、前提条件

  • 必须确保数据库中数据本身没有乱码

2、操作步骤

  • 访问数据库中url后面加几个查询参数
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8

设置useUnicode与characterEncoding的作用如下:
写数据时,数据库在存放项目数据的时候会先用UTF-8格式将数据解码成字节码,然后再将解码后的字节码重新使用GBK编码存放到数据库中;读数据时,在从数据库中取数据的时候,数据库会先将数据库中的数据按GBK格式解码成字节码,然后再将解码后的字节码重新按UTF-8格式编码数据,最后再将数据返回给客户端。
以上url的配置就可以成功解决数据库数据读取乱码的问题。

你可能感兴趣的:(04 mysql数据库读取数据乱码的处理)