首先我把xml中的内容贴出来
<?xml version="1.0" encoding="UTF-8"?>
<globle-info>
<info-1>
<Devtype>0</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-1>
<info-2>
<Devtype>1</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-2>
<info-3>
<Devtype>2</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-3>
<info-4>
<Devtype>3</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-4>
<info-5>
<Devtype>4</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-5>
<info-6>
<Devtype>5</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-6>
<info-7>
<Devtype>6</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-7>
<info-8>
<Devtype>7</Devtype>
<IPAddress>192.168.0.225</IPAddress>
<ServerPort>5050</ServerPort>
<Password>admin</Password>
<Username>admin</Username>
</info-8>
</globle-info>
导入dom4j.jar后 开始编写vo类 与测试入口类
vo类:
package com.bh.readxml;
public class ConnectionInfo {
private String devType;
private String ipAddress;
private String serverPort;
private String password;
private String username;
public String getDevType() {
return devType;
}
public void setDevType(String devType) {
this.devType = devType;
}
public String getIpAddress() {
return ipAddress;
}
public void setIpAddress(String ipAddress) {
this.ipAddress = ipAddress;
}
public String getServerPort() {
return serverPort;
}
public void setServerPort(String serverPort) {
this.serverPort = serverPort;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
程序入口类:
package com.bh.readxml;
import java.net.URL;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReadXML
{
public ReadXML()
{
}
public List readTestXML()
{
List list = new ArrayList();
SAXReader reader = new SAXReader();
URL xmlpath = this.getClass().getClassLoader().getResource("Connetion.xml");
try
{
Document document = reader.read(xmlpath);
Element root = document.getRootElement();
//遍历子元素
for (Iterator i = root.elementIterator(); i.hasNext();) {
Element employee = (Element) i.next();
ConnectionInfo connectionInfo = new ConnectionInfo();
connectionInfo.setDevType(employee.element("Devtype").getText());
connectionInfo.setIpAddress(employee.element("IPAddress").getText());
connectionInfo.setPassword(employee.element("Password").getText());
connectionInfo.setServerPort(employee.element("ServerPort").getText());
connectionInfo.setUsername(employee.element("Username").getText());
list.add(connectionInfo);
}
/* for(int i = 0;i < list.size();i++){
ConnectionInfo vo = (ConnectionInfo)list.get(i);
System.out.println(vo.getDevType());
System.out.println(vo.getIPAddress());
System.out.println(vo.getUsername());
System.out.println(vo.getIPAddress());
System.out.println(vo.getServerPort());
}*/
}
catch (DocumentException e)
{
e.printStackTrace();
}
return list;
}
public static void main(String[] args) {
ReadXML r = new ReadXML();
r.readTestXML();
}
}
就ok了。
分享到:
相关推荐
在本教程中,我们将深入探讨如何使用DOM4J解析(读取)XML节点数据,不受XML层级的限制。 首先,确保你已经下载了必要的依赖,即DOM4J库。通常,这将是一个名为`dom4j-x.x.x.jar`的文件,其中x.x.x是DOM4J的版本号...
**DOM4J 读取XML字符串** DOM4J 是一个非常强大的 Java XML API,它提供了丰富的功能,使得处理 XML 文件变得更加简单。DOM4J 的设计理念是简洁、灵活且高性能,它支持 SAX 和 DOM 解析,并提供了面向对象的接口。...
此外,DOM4J还支持XPath查询,允许我们根据特定表达式查找XML中的元素,这在处理大型XML文档时非常有用。 ```java XPath xpath = XPathFactory.instance().create("//element[@attr='value']"); List<Element> ...
SAXReader采用事件驱动的方式读取XML文件,这意味着它并不会一次性将整个XML文档加载到内存中,而是逐个节点地读取,这样对于大型XML文件而言,可以有效节省内存资源。 #### 解析XML文件 `Document doc = reader....
通过学习和熟练使用DOM4J,开发者能够更高效地在Java项目中处理XML数据。不过要注意,DOM4J基于DOM模型,对于大型XML文件,内存消耗可能较大,因此在处理大文件时应考虑使用SAX或StAX等流式解析器。
在本示例中,我们将探讨如何利用DOM4J来读取和解析XML文件,以及如何通过`XMLTest.java`这个示例来理解DOM4J的基本用法。 首先,`XMLTest.java`是一个包含DOM4J操作XML的代码实例。通常,这样的程序会包含以下步骤...
### 使用dom4j读取XML的四种方法 在Java开发中,处理XML文件是一种常见的需求。Dom4j作为一款简洁高效的Java库,被广泛应用于解析、操作XML文档。本文将详细介绍使用dom4j读取XML文件的四种常见方法,并通过示例...
### Java使用DOM4J读取XML知识点解析 #### 一、概述 在Java开发中,处理XML文件是一项常见的任务。DOM4J是一个简单且功能强大的Java库,用于处理XML文档。它提供了类似于DOM的API,但更为轻量级且易于使用。本篇将...
在本文中,我们将详细探讨如何利用DOM4J库来读取XML文件。 1. **安装DOM4J** 要使用DOM4J,首先需要将其添加到你的项目依赖中。如果你使用的是Maven,可以在`pom.xml`文件中添加以下依赖: ```xml <groupId>...
通过本文介绍的方法,我们可以轻松地使用Dom4j读取和解析XML文件,并将数据封装到实体类中,这对于处理复杂的XML数据结构非常有用。同时,这种方法也为我们提供了一个灵活的方式来管理数据,无论是用于前端展示还是...
DOM4J是一个由dom4j.org开发的开源XML解析包,专为Java平台设计,它不仅支持DOM、SAX和JAXP标准,还巧妙地融入了Java集合框架,使其成为Java开发者在处理XML数据时的强大工具。DOM4J的最大亮点在于其简洁易用的API...
DOM4J支持XPath表达式来查询XML文档中的节点,XPath表达式是查询XML文档的一种强大工具,能够精确地定位到文档中的任意节点。 - **基本的XPath表达式**: - `/AAA/BBB/CCC`:表示从根节点开始查找路径为`AAA/BBB/...
Java中的DOM4J库是一个非常流行的、开源的Java XML API,它提供了强大的XML处理功能,包括XML的读取、创建、修改以及写入。DOM4J是基于DOM模型的,但相比标准的Java DOM,它提供了更加简洁和高效的API,使得开发者在...
在这个场景中,我们关注的是如何使用DOM4J以String的形式读取XML内容,然后将String的值赋给XML中的特定节点,最后将更新后的内容写回XML文件。下面我们将详细探讨这一过程。 1. **解析XML到String** 要将XML文件...
在Java中,读取XML文件有多种方法,本文将介绍四种常见的方法:DOM、DOM4J、JDOM和SAX。 DOM(Document Object Model) DOM是W3C组织制定的XML文档对象模型,它提供了对XML文档的树形结构表示。使用DOM方法读取XML...
DOM4J是一个强大的Java库,专门用于处理...无论你是进行数据交换、配置文件管理还是XML数据的解析和生成,DOM4J都能提供高效而便捷的解决方案。通过学习和熟练掌握DOM4J,开发者可以更好地驾驭XML世界,提高工作效率。
### Dom4J生成XML的完整方法详解 在Java开发领域,处理XML文档是常见的需求之一。Dom4J作为一款优秀的Java XML API,...掌握以上知识点,开发者即可熟练运用Dom4J生成复杂的XML文档,满足项目中对XML数据处理的需求。
2. **高性能**:DOM4J采用了SAX和StAX解析器,避免了DOM解析器加载整个XML文档到内存的性能问题。 3. **易于使用**:DOM4J的API设计简洁,易于理解和使用,支持XPath和XSLT操作。 4. **强大的XML文档操作**:DOM4J...
这篇名为"dom4j实战(一)——使用dom4j从XML中读取数据源配置"的博客文章将深入探讨如何利用DOM4J从XML文件中读取数据源配置。 首先,我们需要理解DOM4J的基本概念。DOM4J是基于DOM模型的,DOM(Document Object ...