我有我的客戶端上的javascript對象列表,這是用戶執行的「事件」列表。當用戶準備就緒時,我想將其發送到服務器。事件的順序很重要,所以保留列表順序是必要的。JSON多態性
我想要做的是有一個JSON庫(不介意哪一個)將JSON綁定到我的Java代碼中的某些Event對象,其中Event是一個抽象類,並且我有3個具體類都可以擴展Event(可以說EventA,EventB和EventC)。
理想的情況會是這樣的
List<Event> events = jsonlibrary.deserialise(jsonString);
可以包含項目的列表,如
[eventA, eventC, eventA, eventA, eventB]
這是可能的,還是我不得不手動檢查JSON樹,deserialise json數組的單個元素?
這就是我要走的路。希望有一個庫可以做一些反思來推斷類型信息,或者將對象類的列表傳遞給反序列化程序,以便讓類從 – Codemwnci
中進行選擇。現在我將使用您的方法。由於我只有有限數量的類,因此可以使用有限的樹遍歷來反序列化基類。 – Codemwnci