我在進行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>