最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

@JsonSerialize不起作用的解決方案

 更新時間:2021年10月13日 14:49:30   作者:不吃肉的小和尚  
這篇文章主要介紹了@JsonSerialize不起作用的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@JsonSerialize不起作用

在項目中 當字段實體類為Long類型時

如果Long值超過前端js顯示的長度范圍時會導(dǎo)致前端回顯錯誤

此時我們想到的解決方案是將Long值返回給前端時轉(zhuǎn)為String,

但是我們又不想變更字段的類型,當然我們也不想額外添加新的字段。

這個時候我們可以用@JsonSerialize,在Json序列化的時候把Long自動轉(zhuǎn)為String,

但是這里有個小坑

被轉(zhuǎn)換的字段必須是包裝類類型,否則會轉(zhuǎn)換失敗。

@JsonSerialize(using = ToStringSerializer.class)
private Long parentId;    //轉(zhuǎn)化成功
@JsonSerialize(using = ToStringSerializer.class)
private long parentId;    //轉(zhuǎn)化失敗

@JsonSerialize正確使用

實際開發(fā)中,我們一定遇到過這樣的問題:前端顯示和后臺存儲數(shù)據(jù)單位不統(tǒng)一,而且各有各自的理由,統(tǒng)一不了,那就只能由后端轉(zhuǎn)換。

每次返回給前端時再轉(zhuǎn)換一遍,返回給前端的json數(shù)據(jù),在后端里定義的往往是一個對象,如何做到優(yōu)雅的轉(zhuǎn)換呢?只需兩步操作:

1. 寫一個負責轉(zhuǎn)換的類

里面寫好規(guī)則

 public class MySerializerUtils extends JsonSerializer<Integer> {
    @Override
    public void serialize(Integer status, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
        String statusStr = "";
         switch (status) {
             case 0:
                 statusStr = "新建狀態(tài)";
                 break;
             case 1:
                statusStr = "就緒狀態(tài)";
                 break;
             case 2:
                 statusStr = "運行狀態(tài)";
                 break;
             case 3:
                 statusStr = "阻塞和喚醒線程";
                 break;
             case 4:
                statusStr = " 死亡狀態(tài)";
               break;
             default:
                 statusStr = "狀態(tài)信息不符合";
         }
         jsonGenerator.writeString(statusStr);
     }
 }

2. 在實體類上需要裝換的字段上加上注解

/**
 * 多線程生命周期狀態(tài)值
 */
@JsonSerialize(using = MySerializerUtils.class)
private int status;

注:@JsonSerialize注解,主要應(yīng)用于數(shù)據(jù)轉(zhuǎn)換,該注解作用在該屬性的getter()方法上。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 初探Spring Cloud Gateway實戰(zhàn)

    初探Spring Cloud Gateway實戰(zhàn)

    這篇文章主要介紹了創(chuàng)建網(wǎng)關(guān)項目(Spring Cloud Gateway)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2021-08-08
  • Java中List對象集合按對象中某字段進行排序舉例

    Java中List對象集合按對象中某字段進行排序舉例

    這篇文章主要給大家介紹了關(guān)于Java中List對象集合按對象中某字段進行排序的相關(guān)資料,我們在日常開發(fā)中也經(jīng)常會用到排序算法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • Java實現(xiàn)前綴樹詳解

    Java實現(xiàn)前綴樹詳解

    Java實現(xiàn)前綴樹(Trie樹)是一種樹形數(shù)據(jù)結(jié)構(gòu),用于字符串的存儲和查找,適用于大量字符串的快速匹配。通過將字符串拆分為字符序列,依次構(gòu)建樹形結(jié)構(gòu),將每個字符串的字符依次存儲在樹的節(jié)點上,實現(xiàn)高效的字符串匹配
    2023-04-04
  • Java中的日期時間類實例詳解(Date、Calendar、DateFormat)

    Java中的日期時間類實例詳解(Date、Calendar、DateFormat)

    在JDK1.0中,Date類是唯一的一個代表時間的類,但是由于Date類不便于實現(xiàn)國際化,所以從JDK1.1版本開始,推薦使用Calendar類進行時間和日期處理,這篇文章主要介紹了Java中的日期時間類詳解(Date、Calendar、DateFormat),需要的朋友可以參考下
    2023-11-11
  • springcloud使用consul作為配置中心

    springcloud使用consul作為配置中心

    這篇文章主要介紹了springcloud使用consul作為配置中心,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • java中@EnableAutoConfiguration注解使用

    java中@EnableAutoConfiguration注解使用

    在Spring Boot框架中,@EnableAutoConfiguration是一種非常重要的注解,本文就來介紹一下java中@EnableAutoConfiguration注解使用,感興趣的可以了解一下
    2023-11-11
  • java導(dǎo)出生成csv文件的方法

    java導(dǎo)出生成csv文件的方法

    這篇文章主要為大家詳細介紹了java導(dǎo)出生成csv文件的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Java創(chuàng)建對象的四種方式詳解

    Java創(chuàng)建對象的四種方式詳解

    這篇文章主要介紹了Java創(chuàng)建對象的四種方式詳解,如果我們不想利用默認構(gòu)造器來創(chuàng)建java對象,而想利用指定的構(gòu)造器來創(chuàng)建java對象,則需要利用Construtor對象,每個Construtor對應(yīng)一個構(gòu)造器,需要的朋友可以參考下
    2023-11-11
  • SpringBoot超詳細分析啟動流程

    SpringBoot超詳細分析啟動流程

    今天小編就為大家分享一篇關(guān)于SpringBoot整個啟動過程的分析,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2022-07-07
  • BaseMapper接口的使用方法

    BaseMapper接口的使用方法

    這篇文章主要介紹了BaseMapper接口的使用方法,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-12-12

最新評論

法库县| 永靖县| 卢氏县| 淳安县| 湖口县| 丘北县| 略阳县| 桃园市| 天柱县| 冕宁县| 平江县| 东乡县| 揭西县| 兴仁县| 沭阳县| 手游| 米泉市| 西昌市| 宁波市| 博野县| 防城港市| 新兴县| 昌江| 淳安县| 东莞市| 巴里| 子洲县| 中宁县| 临夏县| 香港| 赣榆县| 伊川县| 平远县| 东莞市| 象山县| 西丰县| 巨鹿县| 林周县| 浦县| 梅州市| 井冈山市|