數據源配置時加上編碼轉換格式後出問題了: mysql
The reference to entity "characterEncoding" must end with the ';' delimiter spring
這個錯誤就是 context.xml中設置數據源連接URL的問題 sql
<context-param> maven
<param-name>url</param-name> 編碼
<param-value>jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=UTF-8</param-value> url
</context-param> spa
正確的以下: code
<context-param> xml
<param-name>url</param-name> ci
<param-value>jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=UTF-8</param-value>
</context-param>
這大概是由xml文件中的編碼規則決定要這麼變換。
在xml文件中有如下幾類字符要進行轉義替換:
< |
< |
小於號 |
> |
> |
大於號 |
& |
& |
和 |
' |
' |
單引號 |
" |
" |
雙引號 |
----------------------------------------------------------------------------------------------------------------
我遇到的問題是使用maven的resouce直接將變量值寫到了spring的配置文件中,出現了上述錯誤。
換到spring的property-placeholder配置資源文件的話就沒有問題,據此,估計spring經過配置讀取資源文件的話,確定是對上述問題做了處理,具體源碼暫時沒看