包含XMLConfiguration的TestDataReader,用来读取XML文件,并能直接或者字符串,整形数据.要读取的XML文件格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<modules name="testData">
<welcomeToPage>
<patientURL>/patient/welcome.htm</patientURL>
<welcomeMessageVP>Welcome to myBJC.org</welcomeMessageVP>
<invalidPasswordVP>Unable to login</invalidPasswordVP>
<errorPasswordVP>An error has occurred</errorPasswordVP>
<randomQuestion>
What is the name of your favorite author?=TomTom,
What was your childhood nickname?=TBDTom,
In what city did you meet your spouse or significant other?=STLTom,
What school did you attend for sixth grade?=Maiden Tom
</randomQuestion>
</welcomeToPage>
</modules>
TestDataReader代码如下:
import java.util.Properties;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.XMLConfiguration;
import org.apache.log4j.Logger;
/**
* This class is used to parse an xml configuration file and return specified
* value.
*/
public final class TestDataReader {
private static final String KEY_CONNECTOR = ".";
private static final String DATA_FILE_NAME = System
.getProperty("user.dir")
+ "/src/test/resources/testData.xml";
private static final Logger LOGGER = Logger
.getLogger(TestDataReader.class);
private static TestDataReader instance;
private XMLConfiguration xmlConfig;
private TestDataReader() {
try {
xmlConfig = new XMLConfiguration(DATA_FILE_NAME);
} catch (ConfigurationException e) {
LOGGER.error(e);
throw new RuntimeException(e);
}
}
/**
* Read String type property.
*
* @param moduleName related module (second level node in xml).
* @param propName property name in xml file (third level node in xml ).
* @return property of String type
*/
public String getStringProperty(String moduleName, String propName) {
return xmlConfig.getString(moduleName + KEY_CONNECTOR + propName);
}
/**
* Read int type property.
*
* @param moduleName related module (second level node in xml).
* @param propName property name in xml file (third level node in xml ).
* @return property of int type
*/
public int getIntProperty(String moduleName, String propName) {
return xmlConfig.getInt(moduleName + KEY_CONNECTOR + propName);
}
/**
* Read property from hash table.
*
* @param moduleName related module (second level node in xml).
* @param propName property name in xml file (third level node in xml ).
* @param eleName key value of the hash table.
* @return property of int type
*/
public String getHashProperty(String moduleName, String propName,
String eleName) {
// property contains a list key/value pairs
Properties property = xmlConfig.getProperties(moduleName
+ KEY_CONNECTOR + propName);
// Look up the list and get the specified value
return property.get(eleName).toString();
}
/**
* Generate identical instance.
*
* @return identical instance of TestDataReader
* @throws ConfigurationException ConfigurationException when instantiating
* TestDataReader.
*/
public static TestDataReader getInstance() {
if (instance == null) {
instance = new TestDataReader();
}
return instance;
}
}
分享到:
相关推荐
在这个范例中,我们将深入探讨如何使用 `XMLConfiguration` 类来读取XML配置文件,并从中提取数据。 XML配置文件是一种常见的存储应用程序设置的方式,因为它们结构清晰,易于人类阅读和编辑。`XMLConfiguration` ...
XML配置文件的处理使用`XMLConfiguration`类。同样,通过指定文件路径,可以创建配置实例并获取配置信息。 2. **写入XML配置文件** 添加、修改XML配置使用`setProperty()`方法,删除则使用`removeProperty()`。保存...
例如,使用`ConfigurationManager`类读取或写入`app.config`文件,其中包含了应用程序的配置信息。 这个源码示例可能是演示如何在WinForm窗体中加载XML文件,展示数据,以及提供用户交互以更新XML文件。它可能包含...
5. **配置文件管理**:在大型项目中,通常会使用`System.Configuration`命名空间的`ConfigurationManager`类来管理和读取应用程序配置文件,如app.config或web.config。这种方式可以更方便地处理应用程序级别的配置...
本文将详细讲解如何使用C#进行XML文件的读写操作,特别是处理多层节点的情况。 首先,我们需要了解.NET Framework提供的System.Xml命名空间,其中包含了处理XML文档的主要类。例如,XmlDocument、XmlNode、...
本文将详细介绍如何在Wince下使用C#进行XML文件的读写操作。 首先,理解XML文件的基本结构是至关重要的。XML是一种自描述性、可扩展的标记语言,用于存储和传输数据。一个简单的XML文件示例如下: ```xml <?xml ...
标题“Excel操作XML文件”指的是使用Microsoft Excel进行XML(可扩展标记语言)文件的处理,特别是在.NET环境中,针对config配置文件的读取和修改。XML文件通常用于存储数据,而.NET config文件则用来存储应用程序的...
本教程将详细介绍如何使用Python读取XML文件,并提供一个具体的代码示例。 在Python中,我们可以使用内置的`xml`模块来处理XML文件,特别是`xml.etree.ElementTree`子模块,它提供了方便的API来解析和操作XML文档。...
在Java开发中,数据库连接是不可或缺的部分,而JDBC(Java Database ...在实际项目中,可以结合使用Spring框架的ApplicationContext或者Apache Commons Configuration等工具,更方便地管理和加载XML配置文件。
本文将深入探讨如何将`activiti.cfg.xml`文件整合到资源文件中,以便实现更灵活、高效的配置管理,同时兼顾应用的便捷性和适应性。 `activiti.cfg.xml`是Activiti引擎的主要配置文件,它定义了与数据库连接、事务...
以下是如何使用 Commons Configuration 的 `XMLConfiguration` 类来解析 XML 配置文件: ```java import org.apache.commons.configuration.ConfigurationException; import org.apache.commons.configuration....
标题中的“将INI文件转换成XML”涉及到的是两种不同的数据存储格式之间的转换。INI文件是Windows操作系统中常用的一种配置文件格式,它以简洁的方式存储键值对,通常用于应用程序的设置。XML(eXtensible Markup ...
在“TinyXML2使用示例”中,我们可以通过提供的源代码和XML配置文件来了解如何使用TinyXML2进行XML操作。 首先,`CXMLCfg.cpp`、`CXMLCfg.h`文件很可能包含了TinyXML2的封装类或函数,用于简化XML文档的读取和写入...
- 在Demo中,首先使用POI读取Excel文件,提取所需数据。 - 接着,使用DOM解析XML文件,获取配置信息。 - 结合Excel和XML数据,根据预定义的模板生成Java测试类。 - 最后,运行生成的测试文件,验证配置是否正确...
最后,使用`Save`方法将XML文档保存到文件中。 ```csharp xml_doc.Save("path/to/your/file.xml"); ``` #### 8. 示例代码分析 示例代码展示了如何创建一个包含多个节点的XML文档。其中创建了一个名为`Employees`...
2. 配置读取器:使用`System.Configuration`命名空间中的类,如`XmlConfigurationSectionHandler`或自定义配置处理程序来解析`CustomConfig.xml`文件。创建一个配置节处理器类,如`CustomConfigSectionHandler`: `...
本篇文章将详细探讨如何使用C#进行XML文件的操作,包括读取、写入、修改以及解析XML文档。 1. **读取XML文件** 使用`System.Xml`命名空间中的`XmlDocument`类可以轻松读取XML文件。首先,我们需要加载XML文件,...
Commons Configuration 使用`XMLConfiguration`类来处理XML配置文件。它支持XPath表达式,允许你通过路径定位到特定的配置元素。此外,XMLConfiguration还具备递归解析嵌套元素的能力,这对于大型复杂应用来说非常...
在本文档中,我们探讨了如何使用ASP.NET将XML文件中的数据读取并绑定到DropDownList控件,这是一个常用的数据展示和选择组件。以下是实现这一功能的具体步骤和相关知识点: 1. **绑定DropDownList**: 当我们需要...