文章詳情頁
java - 微服務架構中類的設計以及restful返回json數據
瀏覽:83日期:2023-10-28 13:07:42
問題描述
問題1: 在spring boot 實現的微服務架構中,各個服務之間的數據交互問題 說明
比如在服務架構中兩個服務之間的交互,服務A中有一個數據model,服務B調用后,服務A 將此類型的模型返回給服務B ,服務B中就必須也定義一個這樣的數據模型才能正確的接收數據這樣會造成類的多次定義?
問題2:在spring中使用restful返回客戶端數據時,會進行模型轉json操作,但是對象中定義了很多屬性,而客戶端只需要其中部分屬性對應的值,那么如何在返回客戶端之前將其中不需要的或者無值的屬性剔除?
問題解答
回答1:答1:RPC通信的數據傳輸格式常用的有 json、xml 或 自定義的二進制格式,一般都會事先約定好。既然都是不同的服務,一般都是不同的團隊來維護的。再說解析接收對象的類不一定要完全與輸出對象一致。
答2:一種做法是輸出對象定義必要屬性,將你的中間對象轉換成最終要輸出的對象,去除多余屬性。或者在對象轉json的時候剔除多余屬性,spring 中提供了 @JsonIgnore 注解,對 bean 的多余屬性添加該注解后,轉換json對象時,就會忽略該屬性。
回答2:Q1: bean可以定義在一個獨立的module中, 服務A和服務B都依賴這個module即可。
Q2: json注解忽略或者采用dto的方式,只獲取需要的屬性。
標簽:
java
相關文章:
排行榜
