国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - @JsonSerialize不起作用的解決方案

@JsonSerialize不起作用的解決方案

2022-02-19 14:37不吃肉的小和尚 Java教程

這篇文章主要介紹了@JsonSerialize不起作用的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@JsonSerialize不起作用

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

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

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

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

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

但是這里有個小坑

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

?
1
2
@JsonSerialize(using = ToStringSerializer.class)
private Long parentId;    //轉化成功
?
1
2
@JsonSerialize(using = ToStringSerializer.class)
private long parentId;    //轉化失敗

@JsonSerialize正確使用

實際開發中,我們一定遇到過這樣的問題:前端顯示和后臺存儲數據單位不統一,而且各有各自的理由,統一不了,那就只能由后端轉換。

每次返回給前端時再轉換一遍,返回給前端的json數據,在后端里定義的往往是一個對象,如何做到優雅的轉換呢?只需兩步操作:

1. 寫一個負責轉換的類

里面寫好規則

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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 = "新建狀態";
                break;
            case 1:
               statusStr = "就緒狀態";
                break;
            case 2:
                statusStr = "運行狀態";
                break;
            case 3:
                statusStr = "阻塞和喚醒線程";
                break;
            case 4:
               statusStr = " 死亡狀態";
              break;
            default:
                statusStr = "狀態信息不符合";
        }
        jsonGenerator.writeString(statusStr);
    }
}

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

?
1
2
3
4
5
/**
 * 多線程生命周期狀態值
 */
@JsonSerialize(using = MySerializerUtils.class)
private int status;

注:@JsonSerialize注解,主要應用于數據轉換,該注解作用在該屬性的getter()方法上。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/m0_37980582/article/details/103702651

延伸 · 閱讀

精彩推薦
  • Java教程linux下執行java程序的sh腳本分享

    linux下執行java程序的sh腳本分享

    這篇文章主要介紹了linux下執行java程序的sh腳本,僅供參考,但是設置的時候環境變量是最重要的,我就是環境變量一直不對,總是按網上查到的來,不明...

    hebedich1912019-11-29
  • Java教程Java編程幾個循環實例代碼分享

    Java編程幾個循環實例代碼分享

    這篇文章主要介紹了Java編程幾個循環實例代碼分享,多看多練,小編覺得還是挺不錯的,這里分享給大家,供需要的朋友參考。...

    qq_33624284的博客10432021-01-27
  • Java教程Java核心編程之文件隨機讀寫類RandomAccessFile詳解

    Java核心編程之文件隨機讀寫類RandomAccessFile詳解

    這篇文章主要為大家詳細介紹了Java核心編程之文件隨機讀寫類RandomAccessFile,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    夏天de樹下睡著了2792020-12-21
  • Java教程2個java希爾排序示例

    2個java希爾排序示例

    java希爾排序示例,希爾排序是插入排序的一種類型,也可以用一個形象的叫法縮小增量法,需要的朋友可以參考下 ...

    Java教程網3712019-11-22
  • Java教程MyBatis通過BATCH批量提交的方法

    MyBatis通過BATCH批量提交的方法

    今天小編就為大家分享一篇關于MyBatis通過BATCH批量提交的方法,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編...

    isea53311652021-06-24
  • Java教程MiniDao1.8.3 版本發布,輕量級Java持久化框架

    MiniDao1.8.3 版本發布,輕量級Java持久化框架

    MiniDao 是一款輕量級JAVA持久層框架,基于 SpringJdbc + freemarker 實現,具備Mybatis一樣的SQL分離和邏輯標簽能力。...

    JEECG8142021-08-10
  • Java教程進程緩存和緩存服務,如何抉擇?

    進程緩存和緩存服務,如何抉擇?

    我們所說的緩存分為進程內部緩存(系統內部緩存)和 緩存服務(如redis/memcache)。計算機服務從原來的單體結構,到多實例,到現在流行的微服務,緩存...

    Java技術棧4232021-08-05
  • Java教程java實現簡單掃雷小游戲

    java實現簡單掃雷小游戲

    這篇文章主要為大家詳細介紹了java實現簡單掃雷小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    tf19977422021-05-12
主站蜘蛛池模板: 日韩精品在线观看一区 | www.免费av| 欧美精品福利视频 | 精品少妇一区二区三区在线播放 | 精品成人av| 婷婷久久综合 | 欧美精品不卡 | 欧美高清一区 | 精品久久久久久久久久久久久久 | 欧美中文字幕一区二区 | 中文字幕免费中文 | 精品伦精品一区二区三区视频 | 三级黄色片在线免费观看 | 久草免费在线视频 | 国产区在线观看 | 青青av| www.天天操 | 国产激情在线观看 | 国产精品久久久久久久久久新婚 | 日韩电影一区二区三区 | 久久的爱 | 国产精品99久久免费观看 | 国产在线视频一区二区 | 国产高清一区二区 | 欧美国产视频一区 | 国产男女免费视频 | 羞羞视频免费网站 | 久草视频网站 | 婷婷丁香综合 | 天天色天天草 | 欧美日韩亚洲一区 | 午夜私人影院 | 国产激情 | 国产成人精品免费视频大全最热 | 午夜免费剧场 | 91麻豆产精品久久久久久 | 成人在线视频网址 | 中文字幕一二三 | 国产一区二区av | 91av精品视频| 日本成人一区 |