写入数据库中乱码,一般存在的原因是因为你设置的数据库编码和写入数据库的编码不一致的问题造成的,如下:
对于乱码解决的方法:
1. 先修改数据库的编码,一般使用utf-8
2. 是修改连接数据库是的url后面加上,数据库的编码方式,如下:
(1)、c3p0数据库连接池的配置:
?useUnicode=true&characterEncoding=UTF8:注意:&符号一定要修改成&因为&在xml中是特殊符号
<property name="jdbcUrl">jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=UTF8</property>
如果写成了&,将产生如下异常:
[Fatal Error] :4:99: The reference to entity "characterEncoding" must end with the ';' delimiter.
(2)、普通的配置,配置文件不是xml时候,为Properties或者直接写的时候,可以如下配置
jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=UTF8
3. 修改好之后,正常插入汉子不乱码