JAXB - 从XML文档创建动态对象

时间:2012-04-18 05:42:00

标签: jaxb

我有用户发送请求的XML文件列表。通过运行时,我才知道JAXB将要创建什么类型的对象。例如,如果用户发送请求,如

<books>
<name>Java</name>
</books>

然后我想创建一个Book对象。如果用户发送请求,如

<Customer>
<id>1</id>
</Customer> 

然后我想创建一个Customer对象。但是当我使用JAXB解组XML时,我需要指定像

这样的对象类型
Person person= (Person) jaxbUnmarshaller.unmarshal(file); 

无论如何要动态创建这些对象吗?

请帮帮我。

1 个答案:

答案 0 :(得分:1)

如果没有显式强制转换,下面的代码object可能会根据XML文件的内容保存BookPerson的实例。

JAXBContext jc = JAXBContext.newInstance(Book.class, Person.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
Object object = unmarshaller.unmarshal(file) ;
相关问题