如何读取下面这段xml文件
xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<hmdatabase-config datasourcename="domain.HMDataBaseConfig">
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="url">jdbc:mysql://localhost:3306/day16</property>
<property name="user">root</property>
<property name="password">root</property>
</hmdatabase-config>
property是标签的元素名
name是标签的属性名
driverClass是标签中属性名对应的属性值
com.mysql.jdbc.Driver是标签的文本值
读取
首先你需要导入依赖,也就是是解析xml的jar包
<dependency>
<groupId>org.dom4j</groupId>
<artifactId>dom4j</artifactId>## 目录## 目录
<version>2.1.3</version>
</dependency>
读取xml的代码如下
//获取xml解析器对象
SAXReader saxReader = new SAXReader();
//创建想要读取的xml文件的输入流
FileInputStream fileInputStream = new FileInputStream("xxx/hmDataSourceConfig.xml");
//用解析器对象.read(xml文件的输入流),将xml文件读取到Document对象里
Document document = saxReader.read(fileInputStream);
//用getRootElement()方法获取根目录
Element rootElement = document.getRootElement();
//getName()可以获取标签的标签名
System.out.println("这是跟标签的标签名"+rootElement.getName());
//attribute(索引),可以获取索引对应的标签属性对象,用getName()获取属性名称
System.out.println("这是标签内索引为0的属性名"+rootElement.attribute(0).getName());
//attributeValue(属性名)可以获取标签内属性名对应的属性值
String value = rootElement.attributeValue("datasourcename");
System.out.println("这是根标签datasourcename的属性值吗:"+value);
//elements()获取根标签下的子标签集合
List<Element> elements = rootElement.elements();
for (Element element : elements) {
String name = element.attributeValue("name");
//getText()获取标签文本值
String text = element.getText();
sout.out.println(name+":"+text)
。。。
。。。
}
}