亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java和c#中的序列化集成解決方案?

java和c#中的序列化集成解決方案?

繁星點點滴滴 2022-07-27 21:05:44
我有兩個應用程序,一個用 c# 構建,另一個用 JAVA 構建。它們都有一個“compareJsonService”,并且邏輯相同。詳細邏輯:public void compareJsonService(int id,Person personFromCenter){    PersonDTO person = personRepository.getByPK(id);    if(!person.getJson().equals(JsonUtil.serialize(personFromCenter)){        personRepository.updatePerson(convertPersonToDTO(personFromCenter,person));    }}對象 personFromCenter 是唯一的,無論是在 java app 還是 c# app 中。他們通過pk從數據庫中獲取personDTO,并比較字段json,當結果為fasle時,然后更新。但是序列化的結果并不相等,我認為這是java和c#的序列化機制不同造成的。他們都使用equals方法比較輸出,然后總是得到false(因為他們的序列化字符串比較值不同)。所以,他們總是更新。問題是,我想要一個類似于 restful 接口的解決方案,它傳遞 Person 對象并返回一個 json 字符串,所以無論 Java 還是 c# 使用這個服務,它們都會得到相同的序列化輸出。那么,在我將所有 c# 代碼遷移到 Java 之前,有多少解決方案可以解決問題?哪一個是最簡單的方法?
查看完整描述

1 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

只需將 json 字符串轉換為對象(例如使用 Java 中的 Jackson 庫)并比較結果 Java/C# Object。即使您在比較對象時在 json 字符串中得到不同的順序,您也應該能夠知道它們是否相等。



查看完整回答
反對 回復 2022-07-27
  • 1 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號