我刚刚编写了一个程序,用于使用dom4j将数据从xml文件导入数据库。它作为一系列包装在java中的xpath语句而备受瞩目 - 它确实有效,但我强烈认为有更好的方法可以做到这一点。
将数据从xml导入数据库的首选方法是什么?
答案 0 :(得分:4)
根据您拥有的XML类型,JAXB(自1.6以来它是Java SE的标准部分)可能是最直接的处理方式。只需创建一个类似于XML结构的类,将字段的setter和getter以及@XmlRootElement注释添加到类的顶部。然后像
Unmarshaller um = JAXBContext.newInstance(YourClass.class).createUnmarshaller();
YourClass input = (YourClass) um.unmarshal(new FileReader("file.xml"));
将您的XML文件神奇地转换为Java对象。然后,应该很容易写入您选择的数据库。
答案 1 :(得分:2)
我发现Simple非常容易用于从XML创建Java对象。我们使用它来设置我们可以使用Hibernate存储的默认配置。
答案 2 :(得分:1)
我经常遇到同样的问题,并希望我在10年前拥有与现在相同的工具。
如果你需要将现有的XML读入普通的Java类,我个人认为apache digester比dom4j更优雅,更容易使用,因为你只需指定映射。
然后,使用Hibernate将材料写入数据库。
答案 3 :(得分:0)
这实际上取决于XML文件的格式。你能进一步详细说明吗?
就我而言,我有一个应用程序,它存储在XML中的简单Key-> Value对语法,其中我使用DOM迭代节点并生成SQL以插入数据。
使用XPath执行此操作将是一个非常好的解决方案
答案 4 :(得分:0)
在尝试其他任何事情之前,您应该先问几个问题:
答案 5 :(得分:0)