Java 使用Hibernate和dom4j,是否可以在不使用DB的情况下将POJO转换为其XML表示(反之亦然)?
是否可以在不将POJO实例存储到DB的情况下将其转换为XML表示形式,并在DOM4J模式下再次将其从XML加载回POJO?我还没有使用过这一点,但DOM4J似乎有一些JAXB集成,可用于将POJO转换为XML DOM4J: 更新 DOM4J还提供了一个DocumentResult类,该类实现javax.xml.transform.Result。您可以使用JAXB封送到此类,然后操作生成的DOM4J文档对象:Java 使用Hibernate和dom4j,是否可以在不使用DB的情况下将POJO转换为其XML表示(反之亦然)?,java,xml,hibernate,dom4j,Java,Xml,Hibernate,Dom4j,是否可以在不将POJO实例存储到DB的情况下将其转换为XML表示形式,并在DOM4J模式下再次将其从XML加载回POJO?我还没有使用过这一点,但DOM4J似乎有一些JAXB集成,可用于将POJO转换为XML DOM4J: 更新 DOM4J还提供了一个DocumentResult类,该类实现javax.xml.transform.Result。您可以使用JAXB封送到此类,然后操作生成的DOM4J文档对象: 我还没有使用它,但DOM4J似乎有一些JAXB集成,可用于将pojo转换为XML DOM
我还没有使用它,但DOM4J似乎有一些JAXB集成,可用于将pojo转换为XML DOM4J: 更新 DOM4J还提供了一个DocumentResult类,该类实现javax.xml.transform.Result。您可以使用JAXB封送到此类,然后操作生成的DOM4J文档对象:
除了JAXB包javax.xml.bind之外,您不需要任何东西,它是JDK的一部分,我认为是从JDK6开始的。对于初学者,查看JAXBContext和@XmlRootElement注释除了JAXB包javax.xml.bind之外,您不需要任何东西,它是JDK的一部分,我认为从JDK6开始。首先查看JAXBContext和@XmlRootElement注释有许多XML序列化库,请选择: JAXB DOM4J
我自己也是XStream的忠实粉丝,它使用非常简单,不需要.xsd。有许多XML序列化库,请选择: JAXB DOM4J
我自己也是XStream的忠实粉丝,它使用非常简单,不需要.xsd。JAXB实现Metro、MOXy、JaxMe也不需要xsd。还要检查:JAXB实现Metro、MOXy和JaxMe也不需要XSD。另外,请查看:
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
import org.dom4j.Document;
import org.dom4j.io.DocumentResult;
public class Demo {
public static void main(String[] args) throws Exception {
// Create the JAXBContext
JAXBContext jc = JAXBContext.newInstance(Customer.class);
// Create the POJO
Customer customer = new Customer();
customer.setName("Jane Doe");
// Marshal the POJO to a DOM4J DocumentResult
Marshaller marshaller = jc.createMarshaller();
DocumentResult dr = new DocumentResult();
marshaller.marshal(customer, dr);
// Manipulate the resulting DOM4J Document object
Document document = dr.getDocument();
document.getRootElement().addAttribute("foo", "bar");
// Output the result
System.out.println(document.asXML());
}
}