最近做项目过程中要从数据库中读取一些字段,将这些字段先用实体类封装好,然后在其他java主程序中调用该字段进行匹配,奈何我操作了好几遍,总是显示数据库中中文字符乱码。数据库中样式如图1所示。
图1 数据库表
比如我需要匹配数据库中的“一年级”,将所有egrade为"一年级"的记录全部取出来,调用的程序如下:
当我运行这个程序的时候,控制台显示如下:
显然这个时候程序没有读出“一年级”这三个中文字符,解决这个问题的方法很简单,第一种方法,将jdbc.url改为
jdbc:mysql://localhost:3306/testclass?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC
一定要记住把characterEncoding=UTF-8写上,你也可以把我的数据库名字替换成自己的,直接将这个url复制也可以。
第二种方式,修改IDEA的编码格式
打开File-Settings-Editor找到File Encoding设置编码格式为UTF-8,具体看上图即可。
修改完之后就能正常匹配数据库中中文字符了,请看下图。
以上就是我这次的分享,如果您有问题,可以在下方留言。一起交流,一起进步。