我有一個非常大的 xml 需要解組。我不想為此創建 POJO 類,因為這意味著創建大約 20 個類。有沒有一種方法可以動態解組這個,即無需創建 POJO 類?我想讀取這些數據并將其存儲在我的數據庫中的某個位置。我正在嘗試用 jaxb 來做到這一點。
2 回答

holdtom
TA貢獻1805條經驗 獲得超10個贊
術語“unmarshal”通常用于表示解析 XML 并生成自定義 POJO 對象的過程。如果您想使用通用 Java 對象,那么您需要 XML 通用樹模型之一。大多數人使用 DOM,它是最古老、最糟糕的模型,但卻是默認模型,因為它與 Java 平臺捆綁在一起;我自己的推薦是 JDOM2 或 XOM。
如果您不想創建自定義類,那么您就不想使用 JAXB。
您還沒有詳細說明您想要實現的目標,但是對于許多 XML 操作,使用 XSLT 或 XQuery 將比使用 Java 容易得多(因為處理 XML 正是它們的設計目的)。

慕田峪9158850
TA貢獻1794條經驗 獲得超7個贊
您可以檢查DSM庫。它旨在在讀取文檔時處理復雜的 XML 和 JSON 文檔。您以 yaml 格式定義映射定義,因此無需創建要解組的類。DOM API 將所有 XML 加載到內存中,這樣您就無法將 DOM 與大型 XML 一起使用。但 DSM 使用流解析,因此您不會遇到內存問題。使用 DSM 比 DOM 更容易
添加回答
舉報
0/150
提交
取消