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

基于@JsonProperty的使用說明

 更新時間:2022年10月12日 14:49:23   作者:不墜青云之志  
這篇文章主要介紹了基于@JsonProperty的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

一、背景

在熟悉代碼的過程中,看到了@JsonProperty注解的使用,查了下使用的方法,但是總覺得欠缺了點什么東西,所以自己實踐了下這個注解的作用,由于時間原因沒有熟悉究竟底層是怎么實現(xiàn)的.

所以這里只是對使用注意事項做下分析,底層實現(xiàn)的話這里先mark下.

二、使用方式

@JsonProperty注解主要用于實體類的屬性上,作用可以簡單的理解為在反序列化的時候給屬性重命名(多一個名字來識別)

這里以springboot的小demo來驗證下這個注解的作用

Test.java實體類:

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
 
/**
 * @date: 2020/8/17
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Test {
 
    @JsonProperty(value = "fake_name", required = true)
    private String fakeName;
 
    @JsonProperty(value = "fake_old", required = true)
    private Integer fakeOld;
 
    @Override
    public String toString() {
        return "Test{" +
            "fakeName='" + fakeName + '\'' +
            ", fakeOld=" + fakeOld +
            '}';
    }
}

Test.controller類:

import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.annotation.Resource;
/**
 * @date: 2020/7/30
 */
 
@Api(tags = "測試接口")
@RestController
public class TestController {
    @ApiOperation(value="測試")
    @PostMapping("/test")
    public SingleResponse<String> getCodesByMenuCode(@RequestBody Test test) {
        Test param = test;
        System.err.println(JSON.toJSONString(param));
        System.err.println(param.toString());
        Test o1 = JSON.parseObject("{\"fakeName\":\"test\",\"fakeOld\":1}", Test.class);
        Test o2 = JSON.parseObject("{\"fake_name\":\"test\",\"fake_old\":1}", Test.class);
        return SingleResponse.buildSuccessRes("success");
    }
 
}

swagger測試:

可以看到接到了swagger下劃線命名的變量

在Json.toJsonString時候打印的是原本屬性的名稱

兩種方式都可以反序列化成Test對象.

交換使用也是可以反序列化成Test對象.

三、注意事項

1  使用JSON.toJsonString的時候?qū)嶓w類需要有getter方法,否則會輸出{}

2  @requestBody注解需要在post請求下才能正常使用.

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

相關文章

  • java實現(xiàn)百度坐標的摩卡托坐標與火星坐標轉換的示例

    java實現(xiàn)百度坐標的摩卡托坐標與火星坐標轉換的示例

    這篇文章主要介紹了java實現(xiàn)百度坐標的摩卡托坐標與火星坐標轉換的示例,需要的朋友可以參考下
    2014-03-03
  • Java中的自旋鎖與阻塞鎖詳解

    Java中的自旋鎖與阻塞鎖詳解

    這篇文章主要介紹了Java中的自旋鎖與阻塞鎖詳解,阻塞鎖是指當線程嘗試獲取鎖失敗時,線程進入阻塞狀態(tài),直到接收信號后被喚醒,阻塞或者喚醒一個Java線程需要操作系統(tǒng)切換CPU?狀態(tài)來完成,這種狀態(tài)轉換?需要耗費處理器時間,需要的朋友可以參考下
    2023-10-10
  • 在SpringBoot中利用RocketMQ實現(xiàn)批量消息消費功能

    在SpringBoot中利用RocketMQ實現(xiàn)批量消息消費功能

    RocketMQ 是一款分布式消息隊列,支持高吞吐、低延遲的消息傳遞,對于需要一次處理多條消息的場景,RocketMQ 提供了批量消費的機制,這篇文章將展示如何在 Spring Boot 中實現(xiàn)這一功能,感興趣的小伙伴跟著小編一起來看看吧
    2024-11-11
  • MybatisPlus中的insert操作詳解

    MybatisPlus中的insert操作詳解

    這篇文章主要介紹了MybatisPlus中的insert操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • javax.validation自定義日期范圍校驗注解操作

    javax.validation自定義日期范圍校驗注解操作

    這篇文章主要介紹了javax.validation自定義日期范圍校驗注解操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • java線程并發(fā)blockingqueue類使用示例

    java線程并發(fā)blockingqueue類使用示例

    BlockingQueue是一種特殊的Queue,若BlockingQueue是空的,從BlockingQueue取東西的操作將會被阻斷進入等待狀態(tài)直到BlocingkQueue進了新貨才會被喚醒,下面是用BlockingQueue來實現(xiàn)Producer和Consumer的例子
    2014-01-01
  • SpringBoot+Druid開啟監(jiān)控頁面的實現(xiàn)示例

    SpringBoot+Druid開啟監(jiān)控頁面的實現(xiàn)示例

    本文主要介紹了SpringBoot+Druid開啟監(jiān)控頁面的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-06-06
  • String中intern方法的使用場景詳解

    String中intern方法的使用場景詳解

    這篇文章主要給大家介紹了關于String中intern方法的使用場景,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Java 互相關聯(lián)的實體無限遞歸問題的解決

    Java 互相關聯(lián)的實體無限遞歸問題的解決

    這篇文章主要介紹了Java 互相關聯(lián)的實體無限遞歸問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • java中的4種循環(huán)方法示例詳情

    java中的4種循環(huán)方法示例詳情

    大家好,本篇文章主要講的是java中的4種循環(huán)方法示例詳情,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12

最新評論

凤阳县| 昌平区| 郸城县| 广平县| 莆田市| 新津县| 阆中市| 安岳县| 荃湾区| 屯留县| 宝丰县| 林甸县| 新民市| 大埔县| 蒲城县| 清远市| 承德县| 杨浦区| 大埔区| 怀宁县| 玉龙| 淳化县| 万全县| 鄂州市| 保山市| 元谋县| 东台市| 准格尔旗| 聂荣县| 竹北市| 井冈山市| 来宾市| 林周县| 壤塘县| 治多县| 大兴区| 罗田县| 河间市| 汉沽区| 扎兰屯市| 武隆县|