如何读取属性文件并将数据插入到 XML 文件中?

发布于 2024-11-26 20:39:21 字数 136 浏览 1 评论 0原文

我有一个属性文件,其中包含与数据库连接的数据。另外,我有一个休眠配置文件。我想使用属性文件中的属性配置休眠文件。我怎样才能读取属性并将它们插入到 XML 文件中?我可以通过 System.getProperty(name) 读取属性。

谢谢!

I have a properties file with data to connect with database. Also, I have a hibernate config file. I would like to config the hibernate file with properties from properties file. How could I read the properties and insert them into XML file? I can read the properties via System.getProperty(name).

Thanks!

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

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

发布评论

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

评论(3

走过海棠暮 2024-12-03 20:39:21

愿这应该是一个好的开始:

File xmlfile = null;
File propertiesfile = null;
Properties p = new Properties();
p.load(new FileReader(propertiesfile));

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document parse = db.parse(xmlfile);
DOMSource domSource = new DOMSource(parse);
Node root = domSource.getNode();
for (Object key : p.keySet()) {
    String sKey = "" + key;
    root.setTextContent(root.getTextContent()+sKey + "=" + p.getProperty(sKey));
}
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
transformer.transform(domSource, new StreamResult(xmlfile));

May this should be a good start:

File xmlfile = null;
File propertiesfile = null;
Properties p = new Properties();
p.load(new FileReader(propertiesfile));

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document parse = db.parse(xmlfile);
DOMSource domSource = new DOMSource(parse);
Node root = domSource.getNode();
for (Object key : p.keySet()) {
    String sKey = "" + key;
    root.setTextContent(root.getTextContent()+sKey + "=" + p.getProperty(sKey));
}
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
transformer.transform(domSource, new StreamResult(xmlfile));
沉默的熊 2024-12-03 20:39:21

除非你必须重复执行此操作,否则我会使用这种古老的编程技术:

  • 打开属性文件
  • 突出显示属性文件中的属性
  • Ctrlc
  • 打开hibernate配置xml文件
  • 找到插入克拉在属性值处
  • Ctrlv

Unless you have to do this repeatedly, I'd use this ancient programming technique:

  • Open properties file
  • Highlight a property in properties file
  • Ctrlc
  • Open hibernate config xml file
  • Locate insert carat at place of property value
  • Ctrlv
恰似旧人归 2024-12-03 20:39:21

如果我正确理解文档,它应该是开箱即用的:

Hibernate 参考

3.7。 XML配置文件

另一种配置方法是指定完整的
配置位于名为 hibernate.cfg.xml 的文件中。这个文件可以用
作为 hibernate.properties 文件的替代品,或者,如果两者都是
存在,以覆盖属性。

因此,您只需要 hibernate 属性文件和 hibernate.cfg.xml。如果您没有在 hibernate.cfg.xml 中设置值,那么它们将从属性文件中获取。 -- 我没有证明这一点,但这就是我理解文档的方式。

If I understand the documentation right, it should be work out of the box:

Hibernate reference

3.7. XML configuration file

An alternative approach to configuration is to specify a full
configuration in a file named hibernate.cfg.xml. This file can be used
as a replacement for the hibernate.properties file or, if both are
present, to override properties.

So you only need the hibernate properties file and the hibernate.cfg.xml. If you do not set the values in hibernate.cfg.xml, then they are taken from the properties file. -- I did not proved that, but that is the way I understand the documentation.

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