MySQL连接数据库url的参数characterEncoding=UTF-8

最近在整理代码时,遇到数据库变更,向数据库添加记录,中文读取或存入时变为???。本地MySQL数据库的字符集设置的是utf-8,IDE中项目的字符集也是utf-8,所以在切换数据库之前未发现问题。遇到这个问题后排查了一段时间,最后是在MySQL连接数据库url的参数中加了characterEncoding=UTF-8解决了问题。

存入数据:

读取数据:

下面就来探究一下参数characterEncoding=UTF-8的作用:

characterEncoding=UTF-8作用是指定所处理字符的解码和编码的格式,或者说是标准。若项目的字符集和MySQL数据库字符集设置为同一字符集则url可以不加此参数。

添加参数样例:

jdbc\:mysql\://localhost\:3306/info?useUnicode=true&characterEncoding=UTF-8

你可能感兴趣的:(经验集)