做项目的时候遇到一个乱码问题,数据库已经设置为UTF-8的编码方式,项目中也使用了Filter进行编码乱码的处理,但是在写入到数据库后依然为乱码。同时,在写入之前进行打印,看到的内容也不是乱码,搞得头大。网上查了不少,很多是让修改MySQL配置文件、设置编写的项目的编码方式等等,可是这些本身已经做了。后来发现了是在可以在JDBC的URL配置中进行设置的。
jdbc:mysql://localhost:3306/mydatabase?useUnicode=true&characterEncoding=utf-8
只需要在URL中加上?useUnicode=true&characterEncoding=utf-8
即可。
需要注意的是,我这里是在xml中进行配置的。由于xml中不能识别&
,需要使用&
才行。如果在Java文件中配置,直接使用&
就行了。