Java 从属性文件加载xml

Java 从属性文件加载xml,java,xml,spring,properties,Java,Xml,Spring,Properties,是否可以使用spring将数据从属性文件加载到xml文件?如果是,谁能举个例子 以下是xml: <cluster balancer="load" dialect="net.sf.hajdbc.dialect.MySQLDialect" default-sync="full" transaction-mode="parallel" auto-activate-schedule="0 * * ? * *" fail

是否可以使用spring将数据从属性文件加载到xml文件?如果是,谁能举个例子

以下是xml:

<cluster balancer="load" 
       dialect="net.sf.hajdbc.dialect.MySQLDialect" 
       default-sync="full" 
       transaction-mode="parallel" 
       auto-activate-schedule="0 * * ? * *" 
       failure-detect-schedule="0 * * ? * *"
       meta-data-cache="none">
<database id="database1">
  <driver>***</driver>
  <url>***</url>
  <user>***</user>
  <password>***</password>
</database>

如果它是一个Spring属性文件,那么它已经是XML了。如果您愿意,可以使用标准的JavaXML解析库来阅读这篇文章。有几个关于各种方法的教程。

你不需要Spring。您需要做的是使用getProperty()提取属性。例如:

    File propertiesFile = ...
    Properties properties = new Properties();
    FileInputStream  fis = new FileInputStream(propertiesFile);
    properties.load(fis);

    String databaseDriver = properties.getProperty("database.driver");
    String database1Url = properties.getProperty("database1.url");
    String database1Username = properties.getProperty("database1.username");
(为了简单起见,我省略了例外)

并使用JavaAPI for XML创建XML文件。下面是如何开始创建XML的示例:

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = factory.newDocumentBuilder();
Document document = documentBuilder.newDocument();
Element rootElement = document.createElement("database");
document.appendChild(rootElement);

...
google“JavaCreateXML”或类似工具,了解如何根据需要创建xml

是否可以在不使用spring的情况下将数据从属性文件加载到xml文件

是的,但前提是您要编写一整套Java代码:

  • 阅读XML并提取所需的详细信息
  • 加载属性
  • 将属性中的详细信息合并到详细信息中
  • 除了Spring之外,我还不知道这个问题的任何通用解决方案


    事实上,我也不确定你是否能用Spring做到这一点


    SpringDI连接具有替换完整bean属性值(
    PropertyOverrideConfiguer
    )或嵌入属性值中的占位符(
    PropertyPlaceHolderConfigure
    )的机制。然而,POC和PPC对Springbean定义中声明的bean属性值进行操作。示例中的内容看起来像纯XML。。。不是SpringBean声明。

    大家好,我添加了一个示例供大家理解。这取决于读取XML文件的库—除非您不想替换(即编辑)文件中的占位符,然后再阅读,直到您不知道自己在问什么。您提供了一些示例“xml”,但希望从属性文件加载数据?数据源的相关性是什么?它是什么?请重新表述您的问题,以便不了解您的问题的人能够真正理解。我不知道复杂性在哪里,如果您知道答案,答案应该很简单,有一个xml,有一个属性文件,需要将数据从属性转换为xml,但不会使用任何java代码,我不介意使用框架或库。如果有人知道如何将其放入spring配置文件中,请告诉我。我不确定为什么您需要在没有spring的情况下读取spring文件,但这是可能的。事实上,我不想使用java进行任何解析,我只是想知道是否有类似spring的方法,如果您可以从属性文件派生数据到xml,那么Spring使用Java解析xml:-)是的,但是我不需要为Spring编写Java代码,它已经存在了。不管怎么说,等待一个知道的人。实际上,你说过你想不使用Spring就这样做。请再次阅读您的问题。嗨,stephen,您能告诉我您是否可以将xml放入spring配置并使其工作吗?请看这是我的原始问题,让我为您分析一下。hajdbc需要xml,hajdbc从xml中提取信息,现在我需要将信息放在一个属性文件中,该文件将被提取到xml中,然后放在应用程序中。有道理吗?
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder documentBuilder = factory.newDocumentBuilder();
    Document document = documentBuilder.newDocument();
    Element rootElement = document.createElement("database");
    document.appendChild(rootElement);
    
    ...