今天写了一个java项目连接数据库,之后写了一个执行入库操作的模块。此时暴露出一个问题就是项目的中文插入到数据库时会是乱码:
项目输出的中文:
执行插入操作后数据库中内容:
此时CustomerNumber字段是乱码。
出现这种情况一般都是数据库编码与项目编码不一致导致的,首先查看项目与数据库的编码格式:
查看项目编码:
项目的编码是gbk格式
查看数据库编码格式:
数据库编码格式是ISO-8859-1
以上查看编码格式操作可以百度
出现这种情况一般可以通过两种方式解决。一是修改数据库或者项目的编码格式,二是对入库的中文进行编码转换。第一种方式在项目初期可以这样搞,但是考虑到修改编码可能会影响其他模块的功能导致其他模块出现乱码。所以我一般采用第二种方式。
转换编码后,入库中文乱码解决: