我有一個XML休息端點,我正在使用xsd轉換爲對象。 XML的結構隨着時間的推移而變化,這意味着我已經重寫了我的xsd文件以匹配最新更新的xml的結構。有沒有一種通用的方法可以將xml的結構寫入java類中? ,即使我在讀取xml的內容之前並不知道xml的結構。如何將通用休息xml文件讀入java對象?
一個可能的解決方案是使用高級別的xml數據結構,其中包含許多可能使用或不使用的字段。但這似乎是一個不好的做法。
我有一個XML休息端點,我正在使用xsd轉換爲對象。 XML的結構隨着時間的推移而變化,這意味着我已經重寫了我的xsd文件以匹配最新更新的xml的結構。有沒有一種通用的方法可以將xml的結構寫入java類中? ,即使我在讀取xml的內容之前並不知道xml的結構。如何將通用休息xml文件讀入java對象?
一個可能的解決方案是使用高級別的xml數據結構,其中包含許多可能使用或不使用的字段。但這似乎是一個不好的做法。
表示XML文檔的最普通的模型是可以從任何XML文檔創建的DOM。使用DOM,您可以創建不依賴於您正在使用的XML文檔模式的通用應用程序。然而,從JAXB(或類似的XML到對象映射)到DOM的「向下」需要很多額外的工作。問題是你真的需要這個,你將如何處理數據。
例如,如果您正在創建通用XML編輯器或查看器,則此方法看起來很合理,因爲編輯器不會「知道」任何有關它的數據。
如果您正在創建「知道」數據的應用程序,則此方法可能不適用。在這種情況下,您無論如何都必須知道如何處理特定的XML標記,所以您無論如何都需要依賴於XML文檔的模型。在這種情況下,您可能需要更新XML模式的更新並根據XML模式的版本創建適當的POJO。