2
目前我使用Castor框架编组对象到XML文件时,它的工作巨星Castor和JAXB的Marshaller
Writer writer = new FileWriter("D:/out.xml");
Marshaller.marshal(test, writer);
但现在我使用的javax.xml.bind中做同样的事情。
Writer writer = new FileWriter("D:/out.xml");
JAXBContext context =
JAXBContext.newInstance(test.getClass());
Marshaller marshaller = context.createMarshaller();
marshaller.marshal(test, writer);
然后我打这个错误信息:
不能编组型“package1.Testing”为元素,因为它缺少一个@XmlRootElement注释]
感谢您的回答,您可以粗略地向我解释为什么使用脚轮是好的,但jaxb需要添加在XmlRootElement – user236501 2010-01-12 02:32:46
它只是语义。 Castor和JAXB API不同,JAXB需要注释,而Castor不需要。 – 2010-01-12 02:38:30
这是否意味着JAXB需要知道在我的测试文件中,我必须将@XmlRootElement放在哪个类中才能看到? – user236501 2010-01-12 02:41:03