Mysql解决微信特殊符号昵称入库报错乱码
生活随笔
收集整理的這篇文章主要介紹了
Mysql解决微信特殊符号昵称入库报错乱码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Mysql解決微信特殊符號昵稱入庫報錯亂碼
目錄:
- Mysql解決微信特殊符號昵稱入庫報錯亂碼
- 環(huán)境聲明
- 思考亂碼原因
- 怎么解決
- 解決自己代碼和微信編碼統(tǒng)一
- 解決代碼傳輸?shù)綌?shù)據(jù)庫,序列化反序列化問題
- 解決數(shù)據(jù)庫編碼級
- 上圖,我這邊實現(xiàn)的效果
環(huán)境聲明
Mysql5.7
思考亂碼原因
怎么解決
解決亂碼唯一手段,保證編碼統(tǒng)一
解決自己代碼和微信編碼統(tǒng)一
保證代碼操作序列化微信返回參數(shù)和微信編碼統(tǒng)一(默認utf-8),這部分問題,可以通過斷點,日志輕松排查出來
解決代碼傳輸?shù)綌?shù)據(jù)庫,序列化反序列化問題
-
錯誤例子:
datasource:master:url: jdbc:mysql://XX/demo-database?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false -
原因: 特殊表情需要utf8mb4,你這樣設置會讓數(shù)據(jù)庫客戶端代碼,認可是utf-8,入庫特殊符號就會亂碼
打開數(shù)據(jù)庫 vim /etc/my.conf, 添加如下內容
# 設置客戶端序列化默認編碼級 [client] default-character-set = utf8mb4 # 設置mysql默認編碼級 [mysql] default-character-set = utf8mb4[mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4'解決數(shù)據(jù)庫編碼級
新建數(shù)據(jù)庫保證數(shù)據(jù)庫編碼級是 utf8mb4
通過以上手段,保證數(shù)據(jù)編碼一致,可以解決微信特殊符號昵稱亂碼問題
上圖,我這邊實現(xiàn)的效果
總結
以上是生活随笔為你收集整理的Mysql解决微信特殊符号昵称入库报错乱码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《代码大全2》第3章 三思而后行,前期准
- 下一篇: 【js】不间断空格 特殊的空格-ASCI