MybatisPlus保存、讀取MySQL中的json字段失敗問題及解決
MybatisPlus保存、讀取MySQL的json字段失敗
場景
mybatis-plus保存mysql數(shù)據(jù)庫,有字段為json,在java中定義字段為String,但是在保存的時候,json數(shù)據(jù)沒有入庫,為空,代碼執(zhí)行未報(bào)錯。
解決方案
直接用對應(yīng)的Object來做映射,然后增加對應(yīng)的@TableField注解
@Data
public class UserEntity{?
? ? private String userId;?
? ? @TableField(value = "json_obj", typeHandler = FastjsonTypeHandler.class)
? ? private Object jsonObj;
}
@TableField(value = "json_obj", typeHandler = FastjsonTypeHandler.class)主要是通過這個字段來映射,就可以完美解決
在讀取的時候,主要是在實(shí)體類中@TableName(autoResultMap = true),autoResultMap這個參數(shù)
@TableName(autoResultMap = true)
@Data
public class UserEntity {? ??
}Mybatis插入MySQL的json字段報(bào)錯
cannot create a json value from a string with character set 'binary'
mysql5.7后支持json類型的字段,但是mybatis暫時不支持,生成的實(shí)體對象的參數(shù)類型是Object,mapper文件的jdbcType是OTHER,
解決辦法
把生成的實(shí)體對象對應(yīng)的字段類型改為String,mapper文件里面對應(yīng)的字段類型改為VARCHAR,插入的參數(shù)是json字符串
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java樹形結(jié)構(gòu)數(shù)據(jù)生成導(dǎo)出excel文件方法記錄
最近好像得罪了poi,遇到的都是導(dǎo)出word、Excel、pdf的問題,下面這篇文章主要給大家介紹了關(guān)于Java樹形結(jié)構(gòu)數(shù)據(jù)生成導(dǎo)出excel文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-10-10
SpringBoot項(xiàng)目如何將Bean注入到普通類中
這篇文章主要介紹了SpringBoot項(xiàng)目如何將Bean注入到普通類中,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
IntelliJ IDEA 2017.1.4 x64配置步驟(介紹)
下面小編就為大家?guī)硪黄狪ntelliJ IDEA 2017.1.4 x64配置步驟(介紹)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06
Springboot使用ResponseBody漢字返回問號問題
這篇文章主要介紹了Springboot使用ResponseBody漢字返回問號問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06

