我在进行c3p0数据库连接池配置的时候,由于数据库采用主从库的设计(一个负责读,一个负责写),所以我这里就需要两个配置项,但是写两个properties又显得很多余,于是就采用了xml配置,通过<named-config name="xxx">来区分。
一般人就会把以前写好的properties的配置项直接copy过来,假设我们的jdbcUrl是这样的<property name="jdbcUrl">jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8</property>,刚粘贴过来,eclipse会提示The reference to entity “characterEncoding” must end with the ‘;’ delimiter.,我那时候也没有管它,直接把?useUnicode=true&characterEncoding=utf8后面这一大块干掉。
直到测试的时候才发现,已经不支持中文了,会出现乱码的情况!!
这时候才意识到一定要加上以前干掉的那一长串东西,eclipse提示说无法识别&符号,我们需要对这个特殊字符进行转义,使用&。
也就是说,把以前代码改写成这样即可。
<property name="jdbcUrl">jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8</property>