Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 以JPA作为字符串持久化DOM树_Java_Xml_Hibernate_Dom_Jpa - Fatal编程技术网

Java 以JPA作为字符串持久化DOM树

Java 以JPA作为字符串持久化DOM树,java,xml,hibernate,dom,jpa,Java,Xml,Hibernate,Dom,Jpa,我有以下问题。我有一个JPA实体,其中包含类型为org.w3c.dom.Document的属性。我不能,也不想单独保存DOM树的每个对象。我更希望的是将DOM树表示的XML转换为字符串,并将该字符串保存到数据库中。当我重新加载对象时,我希望我的对象解析DOM树并重新初始化属性。JPA可以这样做吗 谢谢。当然有可能 您需要做的是将dom树视为一棵树。经过一些额外的搜索,我终于找到了答案。您只需要告诉JPA将其保存为Blob,元素中包含xml文档 编辑: 事实证明,这是行不通的。我想我在这里找到了一

我有以下问题。我有一个JPA实体,其中包含类型为org.w3c.dom.Document的属性。我不能,也不想单独保存DOM树的每个对象。我更希望的是将DOM树表示的XML转换为字符串,并将该字符串保存到数据库中。当我重新加载对象时,我希望我的对象解析DOM树并重新初始化属性。JPA可以这样做吗


谢谢。

当然有可能


您需要做的是将dom树视为一棵树。

经过一些额外的搜索,我终于找到了答案。您只需要告诉JPA将其保存为Blob,元素中包含xml文档

编辑:
事实证明,这是行不通的。我想我在这里找到了一个有效的解决方案:

谢谢你的回答。但这正是我想要避免的。dom类层次结构相当复杂,我不想指定如何将其作为对象分发到数据库。但没问题。在进行了一些额外的搜索和阅读之后,我找到了答案。你假设我说的是将dom定义为自定义类型,我不是:我说的是定义自己的表示形式,即使它只是一个字符串。但这只适用于Hibernate。我需要坚持简单的JPA。重述:我指给你看,你说不,然后你编辑了你的答案,采取同样的方法,但现在你也不喜欢?令人捧腹的是的,你说得对,只是冬眠而已。老兄,你就去上课吧!将其称为Dom(在您的包中),然后使用一个接受树的构造函数和一个字符串属性。那会得到正确的坚持吗?