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

Java接口過濾為null的字段方式

 更新時間:2025年12月02日 08:40:46   作者:陽仔的屁仔  
大C的技術(shù)優(yōu)化導(dǎo)致接口返回字段處理問題,業(yè)務(wù)架構(gòu)解決規(guī)范性討論,他們做或業(yè)務(wù)方做各有優(yōu)缺點,建議他們做,可以保證對客戶端的字段準確性,避免重復(fù)性工作

一、問題描述

今天在大C的同學(xué)找過來給我們提了個技術(shù)需求,讓我們將接口里返回的字段全不做一下處理,若字段值為 "null" 的時候就不要返回了,他們APP會崩潰。

what ?

我想大家立刻馬上會冒出這樣一個問題之前不是好好的么這么突然就G了。經(jīng)過一陣交流才發(fā)現(xiàn)是技術(shù)加方案變化導(dǎo)致的。

二、問題原因

根本原因就是大C要做技術(shù)優(yōu)化,從之前的php代碼遷移到 golang,老的php代碼在他們那一層做了一個“字端為null就不返回”的過濾。

本次技術(shù)優(yōu)化之后不想做這件事。

老的技術(shù)方案實現(xiàn)如下:

新的技術(shù)方案實現(xiàn)如下:

三、解決方案

業(yè)務(wù)架構(gòu)解決規(guī)范性討論

解決方案從團隊角度來說無非就兩種,一個就是他們做,另一個就是我們業(yè)務(wù)方做。我個人覺得的他們做更合適。

  1. 首先技術(shù)優(yōu)化可以做,但是前提不能影響之前的功能性的東西,不然所有的接入放都要進行適配。對接放愿不愿意改是一回,有沒有時間是另一回事。
  2. 大C對客戶端負責(zé),就一定要保證對客戶端的字段的準確性,其實就是三方接口不可信。
  3. 大C來做這件事的話其他業(yè)務(wù)方都不用做重復(fù)性的動作了,這樣架構(gòu)也簡潔。
  4. 若是業(yè)務(wù)放來做,怎么做,做到什么力度也是個問題,不可能在全局做這樣的邏輯處理,除非對大C是一個API。但是顯然不可能出現(xiàn)這樣的架構(gòu)設(shè)計。舉個case:一個接口給大C提供了并且做了這個邏輯判斷,但是某一天有個同學(xué)給大C提供了個新接口沒有人提醒他做這樣的邏輯處理,測試的時候各個字段都有,結(jié)果上線之后由于業(yè)務(wù)變化某個字段值沒有了,客戶端不就G了么。

業(yè)務(wù)放的解決方案

若是業(yè)務(wù)方做這件事的話,有兩種方式。

1、按照接口返回對象過濾,使用JsonInclude注解,該注解可作用在字段上也可作用在對象上。

# 引的包
import com.fasterxml.jackson.annotation.JsonInclude;

# 具體注解
@JsonInclude(JsonInclude.Include.NON_NULL)

2、按照全局過濾使用配置。

spring:
  jackson:
    default-property-inclusion: non_null

具體采用哪種方式大家視情況而定。

總結(jié)

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

相關(guān)文章

  • Centos7安裝JDK1.8詳細過程實戰(zhàn)記錄

    Centos7安裝JDK1.8詳細過程實戰(zhàn)記錄

    這篇文章主要給大家介紹了關(guān)于Centos7安裝JDK1.8的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-09-09
  • Java中的異常處理機制try-catch詳解

    Java中的異常處理機制try-catch詳解

    這篇文章主要介紹了Java中的異常處理機制try-catch詳解,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • Java?GUI實現(xiàn)學(xué)生成績管理系統(tǒng)

    Java?GUI實現(xiàn)學(xué)生成績管理系統(tǒng)

    這篇文章主要為大家詳細介紹了Java?GUI實現(xiàn)學(xué)生成績管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Java中HashMap和TreeMap的區(qū)別深入理解

    Java中HashMap和TreeMap的區(qū)別深入理解

    首先介紹一下什么是Map。在數(shù)組中我們是通過數(shù)組下標來對其內(nèi)容索引的,而在Map中我們通過對象來對對象進行索引,用來索引的對象叫做key,其對應(yīng)的對象叫做value
    2012-12-12
  • Java實現(xiàn)的時間戳與date對象相互轉(zhuǎn)換功能示例

    Java實現(xiàn)的時間戳與date對象相互轉(zhuǎn)換功能示例

    這篇文章主要介紹了Java實現(xiàn)的時間戳與date對象相互轉(zhuǎn)換功能,結(jié)合具體實例形式分析了java日期與時間戳類型的表示與轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • java 獲取中文拼音首字母及全拼的實踐

    java 獲取中文拼音首字母及全拼的實踐

    本文主要介紹了java 獲取中文拼音首字母及全拼的實踐,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Spring事件監(jiān)聽器ApplicationListener的使用與原理分析

    Spring事件監(jiān)聽器ApplicationListener的使用與原理分析

    文章介紹了Spring中的事件監(jiān)聽器和事件發(fā)布機制,包括內(nèi)置事件的使用和自定義事件的創(chuàng)建與發(fā)布,以及如何使用@EventListener注解進行事件監(jiān)聽,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2025-11-11
  • 解決Springboot配置excludePathPatterns不生效的問題

    解決Springboot配置excludePathPatterns不生效的問題

    這篇文章主要介紹了解決Springboot配置excludePathPatterns不生效的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 使用FastJSON解析JSON發(fā)生異常的踩坑記錄

    使用FastJSON解析JSON發(fā)生異常的踩坑記錄

    這篇文章主要為大家詳細介紹了使用FastJSON解析JSON發(fā)生異常的問題原因分析以及對應(yīng)的解決方法,文章的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2025-09-09
  • Spring Boot中的屬性綁定的實現(xiàn)

    Spring Boot中的屬性綁定的實現(xiàn)

    這篇文章主要介紹了Spring Boot中的屬性綁定的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04

最新評論

广昌县| 云阳县| 石渠县| 昌吉市| 南乐县| 阳谷县| 鄂托克前旗| 旬阳县| 方山县| 若尔盖县| 高台县| 阳江市| 虹口区| 阿拉善左旗| 安陆市| 左云县| 揭西县| 阳高县| 黄梅县| 新宾| 遵义县| 太仆寺旗| 钟山县| 苗栗县| 宝应县| 夏邑县| 邮箱| 高邮市| 澄迈县| 江达县| 望都县| 淮安市| 遂溪县| 丹棱县| 杂多县| 中西区| 宁海县| 辽中县| 乌拉特前旗| 汝州市| 信阳市|