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

為什么rest接口返回json建議采用下劃線形式,不要用駝峰

 更新時間:2020年09月17日 10:38:56   作者:luo_yu_1106  
為什么rest接口返回json建議采用下劃線形式,不要用駝峰?今天小編就來為大家說明一下原因,還等什么?一起跟隨小編過來看看吧

今天被數(shù)據(jù)大神說了,對接第三方接口返回的json字段我想用駝峰形式,他說我這樣不專業(yè)。所以就改了,認慫。

記住以后再次對接rest接口,返回的字段用下劃線形式

記錄一下改的內容

1.使用fastjson的@JSONField(name = "is_member")

如果沒有fastjson的包,要先引入

 <!-- fastjson start -->
 <dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.2.54</version>
 </dependency>
    <!-- fastjson end -->

實體參數(shù):

  /**
 * 是否會員
 */
 @JSONField(name = "is_member")
 private String isMember;

將需要轉換的實體都標注好后,在通過JSONObject轉jsonString的時候,就可以得到字段為下戶線的json了

String json = JSONObject.toJSONString(new Entity());

tips:可以寫個單元測試,測試一下這個轉換是否成功

另外,還可以設置json轉換時去掉某個字段,只需要這么寫

@JSONField(serialize = false)

private String name;

自己寫單元測試試一下吧

2.為了統(tǒng)一,csv文件的header字段我也用了下劃線,但是由于這個不是轉換json,所以上面的方法行不通,所以我自己轉換了一下。

  public static final char UNDERLINE = '_';
   /**
 * @Description 駝峰式轉下劃線
 */
public static String camelToUnderline(String param) {
 if (param == null || "".equals(param.trim())) {
  return "";
 }
 int len = param.length();
 StringBuilder sb = new StringBuilder(len);
 for (int i = 0; i < len; i++) {
  char c = param.charAt(i);
  if (Character.isUpperCase(c)) {
  sb.append(UNDERLINE);
  sb.append(Character.toLowerCase(c));
  } else {
  sb.append(c);
  }
 }
 return sb.toString();
 }

好了,統(tǒng)一下劃線格式就改好了。

補充知識:@JsonProperty注解 和 @Colume注解 -- 駝峰式和下劃線之間的自動轉換

變量名為appid,希望jackson在把對象轉換為json串時變?yōu)?AppId??梢允褂聾JsonProperty注解

@JsonProperty("user_name")

private String userName;

變量名為 createTime, 希望JPA自動對應到數(shù)據(jù)庫的 create_time 字段,可以使用

@Column 注解。
  @Column(name = "create_time")
  public Timestamp getCreateTime() {
    return createTime;
  }

以上這篇為什么rest接口返回json建議采用下劃線形式,不要用駝峰就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Spring?Boot?實現(xiàn)?WebSocket?的代碼示例

    Spring?Boot?實現(xiàn)?WebSocket?的代碼示例

    WebSocket?協(xié)議是獨立的基于?TCP?協(xié)議。它與?HTTP?的唯一關系是,它的握手會被?HTTP?服務器解釋為?Upgrade?請求,接下來通過本文給大家介紹Spring?Boot?實現(xiàn)?WebSocket?示例詳解,需要的朋友可以參考下
    2022-04-04
  • WMTS中TileMatrix與ScaleDenominator淺析

    WMTS中TileMatrix與ScaleDenominator淺析

    這篇文章主要為大家介紹了WMTS中TileMatrix與ScaleDenominator淺析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Java字符串中刪除指定子字符串的方法簡介

    Java字符串中刪除指定子字符串的方法簡介

    這篇文章主要介紹了Java字符串中刪除指定子字符串的方法,是Java入門學習中的基礎知識,需要的朋友可以參考下
    2015-11-11
  • java如何反編譯jar包并修改class文件重新打包

    java如何反編譯jar包并修改class文件重新打包

    這篇文章主要介紹了java如何反編譯jar包并修改class文件重新打包,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 為什么說要慎用SpringBoot @ComponentScan

    為什么說要慎用SpringBoot @ComponentScan

    本文主要介紹了為什么說要慎用SpringBoot @ComponentScan,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • JavaWeb實現(xiàn)文件的上傳與下載

    JavaWeb實現(xiàn)文件的上傳與下載

    這篇文章主要為大家詳細介紹了JavaWeb實現(xiàn)文件的上傳與下載,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • SpringCloud版本問題報錯及解決方法

    SpringCloud版本問題報錯及解決方法

    這篇文章主要介紹了SpringCloud版本問題報錯及解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • redis 獲取 list 中的所有元素操作

    redis 獲取 list 中的所有元素操作

    這篇文章主要介紹了redis 獲取 list 中的所有元素操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 淺談Java異常的Exception e中的egetMessage()和toString()方法的區(qū)別

    淺談Java異常的Exception e中的egetMessage()和toString()方法的區(qū)別

    下面小編就為大家?guī)硪黄獪\談Java異常的Exception e中的egetMessage()和toString()方法的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Java虛擬機如何運行Java字節(jié)碼

    Java虛擬機如何運行Java字節(jié)碼

    這篇文章主要介紹了Java虛擬機如何運行Java字節(jié)碼的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06

最新評論

苗栗县| 丹凤县| 兰西县| 孝义市| 开鲁县| 南通市| 武定县| 灵山县| 泰宁县| 宁都县| 铜山县| 漳平市| 鄱阳县| 威海市| 视频| 防城港市| 黑水县| 赣榆县| 甘泉县| 五华县| 绿春县| 皮山县| 松滋市| 翁源县| 类乌齐县| 汪清县| 大英县| 金阳县| 开阳县| 英吉沙县| 广宗县| 屏边| 万州区| 名山县| 贡觉县| 平乐县| 阿荣旗| 廊坊市| 蒙阴县| 宾川县| 北宁市|