hi 剛接觸springboot,專案遇到一個問題求助:
reids總存盤了 用戶id和用戶的基本資訊,redis中 key是userid ,value是json {"id":"123","gender":"男","age":"36"}
現在業務方想回傳value中的某些資料,
比如:想只回傳id 和 age的資料
我該如何優雅的處理這個請求 ,現在專案中用了jackson處理json資料
uj5u.com熱心網友回復:
我只能想到 先反序列化 再從Java物件中獲取uj5u.com熱心網友回復:
定義一個vo類 存所有欄位資訊 加上 @JsonInclude(value = JsonInclude.Include.NON_NULL)注解 業務層 決議快取里的json串以及你想要回傳的欄位賦值到這個vo類里,然后回傳這個vo類uj5u.com熱心網友回復:
是否有不生成java物件的方法, 直接用json? 可能有100+個屬性 ,介面中會傳遞 資料域的欄位比如:age ,也就想要的資料域可能是不一樣的。uj5u.com熱心網友回復:
直接定義一個模型 欄位是你想要的 然后json反序列化
uj5u.com熱心網友回復:
欄位串列是 動態的 每次請求可能不同uj5u.com熱心網友回復:
value 建議存成redis里面的hash結構,取的時候可以根據需要只取age,id本身是key,自動取出了uj5u.com熱心網友回復:
ResponseAdvice(大概是這個單詞吧,代碼提示一下就出來了)這個介面,對于json請求,springmvc允許你在物件轉json前,讓你自己去操作修改結果!對應有個requestAdvice,讓你在讀取json資料后,做相關操作??很強大的兩個介面
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/255379.html
標籤:Java EE
下一篇:各位大神求助下拉框的顯示問題
