[英]Java: Populating .xsd-generated class from .xml file
我有一個從.xsd文件生成的類,並且我有一個.xml文件,其中包含遵守.xsd中架構的數據。 就像是:
MyObject.xsd
MyObject.java
MyObject.xml
有一個簡單的辦法,我反序列化MyObject.xml
到的實例MyObject.java
? 我希望比手動遍歷DOM元素並設置對象的所有屬性更簡單。
基本上,我正在java.beans.XMLDecoder
尋找功能,但是由於不是從XMLEncoder
創建我的.xml文件,所以我不相信可以使用解碼器。
首先,您需要使用靜態newInstance
方法創建一個JAXBContext
實例。 然后使用createMarshaller
方法創建一個Unmarshaller
實例,並在該實例上調用適當的unmarshal
方法:
InputStream is = new FileInputStream("MyObject.xml");
JAXBContext jc = JAXBContext.newInstance(MyObject.class);
Unmarshaller u = jc.createUnmarshaller();
MyObject o = (MyObject)u.unmarshal(is);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.