小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

解決Springboot JPA + mysql 無法添加emoji問題

 quasiceo 2018-08-19

解決Springboot JPA + mysql 無法添加emoji問題

2018年04月20日 15:55:15
閱讀數(shù):255

假設(shè)你數(shù)據(jù)庫用的是utf-8編碼,在沒有解決emoji編碼之前,會報類似以下錯誤:

Incorrect string value: '\xF0\x9F\x98\xAC' for column 'user_name'
  • 1

其原因是因為utf8無法保存emoji表情。在寫解決辦法之前先補(bǔ)充一下utf8mb4的概念:

什么事utf8mb4?utf8mb4它是utf8的超集并兼容utf8的所有字符集,其中mb4表示most bytes
4,就是說字符編碼可以用1~4個字節(jié)去編碼。

用utf8mb4的原因:

在mysql中utf8只支持字符長度最大為3個字節(jié)的字符,而emoji是長度為4個字節(jié)的字符,因此,普通的utf8編碼不能滿足emoji的要求,這時就需要用到utf8mb4編碼。(提示:utf8mb4要求mysql版本在5.5.3以上)

下面進(jìn)入正題,如何解決題目中emoji問題:

第一步,修改對應(yīng)字段編碼,將其改為utf8mb4編碼

修改字段編碼:ALTER TABLE table_name CHANGE column_name column_name VARCHAR(255)  CHARACTER SET utf8mb4  NULL  DEFAULT NULL;
  • 1

附上可能需要用到的其他操作:

修改數(shù)據(jù)庫編碼:SET character_set_database = utf8mb4;alter database db_name character set utf8mb4
修改數(shù)據(jù)表編碼:ALTER TABLE db_name CHARACTER SET = utf8mb4;
查看數(shù)據(jù)庫編碼:SHOW CREATE DATABASE db_name;
查看表編碼:SHOW CREATE TABLE tb_name;
查看字段編碼:SHOW FULL COLUMNS FROM col_name;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

完成了第一步,你就可以通過mysql手動插入emoji數(shù)據(jù),但是通過Springboot插入數(shù)據(jù)還是會報錯,這時就需要下面這步:

第二步修改tomcat的sql插入編碼,修改yml文件:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf-8&autoReconnect=true
    username: root
    password: '123456'
    tomcat:
      init-s-q-l: SET NAMES utf8mb4 //這是最重要的一步
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

完成上述兩步,就可以通過JPA插入emoji了,開森!

版權(quán)聲明:本文為博主原創(chuàng)文章,您可自由轉(zhuǎn)載,但請保留博主信息和文章鏈接URL。 https://blog.csdn.net/qq_22600319/article/details/80019938
文章標(biāo)簽: emoji springboot JPA
個人分類: SpringBoot
▼查看關(guān)于本篇文章更多信息
想對作者說點什么? 我來說一句

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多