将 java 对象持久保存到 xml 所需的建议

发布于 2024-10-04 18:40:32 字数 111 浏览 6 评论 0原文

我们正在使用 hibernate 从 oracle 数据库加载数据。我需要从其中一个表加载数据,然后将该表中选定的数据作为 xml 文件存储在另一个表中。如果有人能建议实现此功能的最佳方法是什么,那就太好了?

We are using hibernate to load data from oracle database. I need to load the data from one of the tables and then store selected data from this table as an xml file in another table. It would be great if someone could suggest, what would be the best way to achieve this functionality?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

绝對不後悔。 2024-10-11 18:40:32

看一下这个问题,其中讨论了可用于将 Java 对象转换为 XML 的库(例如 JAXB 和 XStream)。

使用开源 API 将 java 对象转换为 xml 的最佳方法是什么

Take a look at this question which discusses libraries (such as JAXB and XStream) you can use to convert Java objects to XML.

What is the best way to convert a java object to xml with open source apis

时光匆匆的小流年 2024-10-11 18:40:32

使用 ThougthWorks 的 Xstream

“XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。”

Use Xstream of ThougthWorks.

"XStream is a simple library to serialize objects to XML and back again."

︶ ̄淡然 2024-10-11 18:40:32

XMLEncoder (java.beans.XMLEncoder) 是它已经包含在 JDK 中,使您能够将 java 对象持久保存到 XML,而无需任何外部库或工具。

示例类:

public class Foo {
   private String foo ;

   public void setFoo(String s) {
     foo = s;
   }

   public String getFoo() {
     return foo;
   }
}

用于序列化为 XML 的帮助程序类:

import java.beans.XMLEncoder;
import java.io.*;

public class FooHelper {
    public static void write(Foo f, String filename) throws Exception{
        XMLEncoder encoder =
           new XMLEncoder(
              new BufferedOutputStream(
                new FileOutputStream(filename)));
        encoder.writeObject(f);
        encoder.close();
    }
}

生成的 XML:

<?xml version="1.0" encoding="UTF-8"?> 
<java version="1.5.0-beta" class="java.beans.XMLDecoder"> 
 <object class="Foo"> 
  <void property="foo"> 
   <string>bar</string> 
  </void> 
 </object> 
</java>

XMLEncoder (java.beans.XMLEncoder) is already included in the JDK and enables you to persist java objects to XML without any external libraries or tools.

An example class:

public class Foo {
   private String foo ;

   public void setFoo(String s) {
     foo = s;
   }

   public String getFoo() {
     return foo;
   }
}

Helper class to serialize to XML:

import java.beans.XMLEncoder;
import java.io.*;

public class FooHelper {
    public static void write(Foo f, String filename) throws Exception{
        XMLEncoder encoder =
           new XMLEncoder(
              new BufferedOutputStream(
                new FileOutputStream(filename)));
        encoder.writeObject(f);
        encoder.close();
    }
}

The resulting XML:

<?xml version="1.0" encoding="UTF-8"?> 
<java version="1.5.0-beta" class="java.beans.XMLDecoder"> 
 <object class="Foo"> 
  <void property="foo"> 
   <string>bar</string> 
  </void> 
 </object> 
</java>
待天淡蓝洁白时 2024-10-11 18:40:32

如果您使用 JPA 来保存实体,请查看是否可以将提供程序切换到 EclipseLink。如果可以为您将相同的 JPA 持久 pojo 转换为 XML。所以你只需要处理单个库。

If you are using JPA to persist your entities then look at if you can switch your provider to EclipseLink. If can convert the the same JPA persistent pojos to XML for you. So you will only have to deal with single library.

风蛊 2024-10-11 18:40:32

你可以看看 xmlbeans

You can take a look at xmlbeans

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文