mysql連線url中useUnicode=true&characterEncoding=UTF-8的作用
阿新 • • 發佈:2019-02-14
mysql連線url中useUnicode=true&characterEncoding=UTF-8的作用
我們在連線mysql資料庫的時候一般都會在url後面新增useUnicode=true&characterEncoding=UTF-8 ,但是問什麼要新增呢?
新增的作用是:指定字元的編碼、解碼格式。
例如:mysql資料庫用的是gbk編碼,而專案資料庫用的是utf-8編碼。這時候如果添加了useUnicode=true&characterEncoding=UTF-8 ,那麼作用有如下兩個方面:
1. 存資料時:
資料庫在存放專案資料的時候會先用UTF-8格式將資料解碼成位元組碼,然後再將解碼後的位元組碼重新使用GBK編碼存放到資料庫中。
2.取資料時:
在從資料庫中取資料的時候,資料庫會先將資料庫中的資料按GBK格式解碼成位元組碼,然後再將解碼後的位元組碼重新按UTF-8格式編碼資料,最後再將資料返回給客戶端。
注意:在xml配置檔案中配置資料庫URL時,要使用&的轉義字元也就是&
例如:<property name="url" value="jdbc:mysql://localhost:3306/email?useUnicode=true&characterEncoding=UTF-8" />