1

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

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

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

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

然后我想创建一个客户对象。但是当我使用 JAXB 解组 XML 时,我需要指定对象类型,例如

Person person= (Person) jaxbUnmarshaller.unmarshal(file); 

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

请帮我。

4

1 回答 1

1

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

JAXBContext jc = JAXBContext.newInstance(Book.class, Person.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
Object object = unmarshaller.unmarshal(file) ;
于 2012-04-18T09:09:40.990 回答