`
zzbupt
  • 浏览: 86447 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA读取XML文件数据(转)

阅读更多
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE managers SYSTEM "manager-config.dtd"><managers>  <manager name="DBConnectionManager" >    <service>net.csdn.blog.xport.IDBConnectionManager</service>    <implementation>net.csdn.blog.xport.impl.DBConnectionManagerCommonImpl</implementation>  </manager>  <manager name="NTAccountIdendify" >        <service>net.csdn.blog.xport.IDomainIdentify</service>        <implementation>net.csdn.blog.xport.impl.DomainIdentifyImpl</implementation>  </manager></managers>


按照下面的代码读取:

// 查找以manager作为tag标记,属性中存在name且属性值为"DBConnectionManager"的// XML节点, 并返回此节点的DOM Element对象!// 类似name字段为PK值,且name="DBConnectionManager"managerElement        = XMLFileUtil.findElement(xmlDomContent.getRootElement(),                                  "manager",                                  "name",                                  "DBConnectionManager");if (managerElement != null) {  //取得Element中的implementation属性对象...  serviceImplElement = managerElement.element("implementation");  if (serviceImplElement != null) {    //取这个属性的值...    serviceImplClassString = serviceImplElement.getText();  }}


Source of XML Utility Class:

/* * @(#)XMLFileUtil.java    1.0 2004/12/20 * * Copyright 2004 Shark Wang, All rights reserved.  */ package net.csdn.blog.xport;import java.net.URL;import java.util.Iterator;import org.apache.log4j.LogManager;import org.apache.log4j.Logger;import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.SAXReader;/** * The <code>XmlUtil</code> class supported your code to read/write xml * data from the file. all methods in this class depend on <code>dom4j</code>. * * @author  Shark Wang * @version 1.0, 2004/12/20 * @since   Tutorial 1.0 */public class XMLFileUtil {  private static Logger logger = LogManager.getLogger(XMLFileUtil.class);  /**   * read xml content from some file, and load xml data into the   * Document object.   *   * @param filePath String   * @return Document   */  public static Document LoadXmlFile(String filePath) {    /* marked by Shark Wang     *****************************************************************       //get resolver to ignore the DTD validation       EntityResolver resolver = new EntityResolver() {           public InputSource resolveEntity(String publicId,                                            String systemId) {               return new InputSource(new StringBufferInputStream(""));           }       };       //create reader       SAXReader reader = new SAXReader();       //set reader attribute to ignore DTD validation       reader.setEntityResolver(resolver);       reader.setValidation(false);       reader.setIncludeExternalDTDDeclarations(false);       reader.setIncludeInternalDTDDeclarations(false);     *******************************************************************     */    SAXReader reader = new SAXReader();    //try to load xml data into Document object    Document doc = null;    try {      String urlString = null;      if (filePath.startsWith("/")) {        urlString = "file://" + filePath;      }      else {        urlString = "file:///" + filePath;      }      logger.debug("XML File's URL :" + urlString);      doc = reader.read(new URL(urlString));    }    catch (Exception ex) {      logger.info("Can not load " + filePath);      logger.debug(ex.getMessage(), ex);    }    //return Document object    return doc;  }  /**   * Get attribute value by name for some xml element.   *   * @param element Element   * @param attributeName String   * @return String   */  public static String getAttributeValue(Element element,                                         String attributeName) {    String attributeValue = null;    for (Iterator i = element.attributeIterator(); i.hasNext(); ) {      Attribute attribute = (Attribute) i.next();      if (attribute.getName().equals(attributeName)) {        attributeValue = (String) attribute.getData();        break;      }    }    return attributeValue;  }  public static Element findElement(Element searchedElement,                                    String targetNodePrefix,                                    String targetNodeAttributeName,                                    String targetNodeAttributeValue) {    Element elementTarget = null;    for (Iterator i = searchedElement.elementIterator(targetNodePrefix);         i.hasNext(); ) {      Element element = (Element) i.next();      String strManagerName =          XMLFileUtil.getAttributeValue(element,                                        targetNodeAttributeName);      if (strManagerName.equals(targetNodeAttributeValue)) {        elementTarget = element;        break;      }    }    return elementTarget;  }  private XMLFileUtil() {  }}

分享到:
评论

相关推荐

    用java读取xml文件的四种方法

    要读取XML文件,Java提供了多种方法。以下是四种常用的方法,每种都有其适用场景和特点: 1. **DOM解析器(Document Object Model)** DOM解析器将整个XML文件加载到内存中,创建一个树形结构,允许我们通过节点...

    java读写xml文件

    ### Java读写XML文件知识点详解 #### 一、概述 在Java编程中,对XML文件进行读取与写入是一项非常常见的任务。XML(可扩展标记语言)是一种用于标记数据的语言,非常适合用来存储和传输数据。Java提供了多种API来...

    java读取xml文件

    Java 读取 XML 文件是 Java 开发中常见的一项任务,XML(eXtensible Markup Language)作为一种可扩展标记语言,广泛用于数据交换、配置存储等领域。本教程将深入讲解如何在 Java 中处理 XML 文件,同时涉及 XML 的 ...

    java读取xml文件生成文件

    Java语言在处理XML文件时,提供了丰富的API和库,使得我们可以轻松地读取、解析、修改和生成XML文档。在给定的场景中,我们主要关注如何使用Java来读取XML文件并根据需求生成新的文件。以下是关于这个主题的详细说明...

    用java读取修改xml文件的代码实现

    本文将详细介绍如何使用Java来读取和修改XML文件,主要涉及以下几个核心知识点: 1. **DOM解析器**: Document Object Model(DOM)是一种将XML文档转换为内存中的树形结构的方法,使得可以遍历和修改XML文件。...

    java中读写XML文件

    在Java编程语言中,XML(eXtensible Markup Language)是一种重要的数据交换格式,用于存储和...在提供的"在java中读写XML文件.ppt"和"源码"中,可能包含了更多详细的步骤和示例代码,可以帮助你进一步理解这个主题。

    js 操作xml 文件 读取xml文件

    js 操作xml 文件 读取xml文件 js 操作xml 文件 读取xml文件

    Java读写xml java 读写xml文件操作, 简单易懂

    ### Java读写XML文件操作详解 在现代软件开发中,XML(可扩展标记语言)是一种广泛使用的数据交换格式,尤其在处理配置文件、数据存储以及跨平台数据交换时显得尤为重要。Java提供了多种读写XML文件的方法,包括SAX...

    xml文件自动转成java对象工具

    总之,XML文件自动转成Java对象工具是Java开发中不可或缺的一部分,它极大地简化了XML数据处理,提高了开发效率。通过理解和利用这类工具,开发者可以更专注于业务逻辑,而非基础的数据转换工作。

    java读取xml文件并存入数据库

    java从xml中读入数据并存入到sqlserver2005数据库中

    java写XML文件和读取XML文件

    二、Java读取XML文件 1. 使用DOM解析: 读取XML文件时,首先会将整个XML文档加载到内存中的DOM树,然后通过API遍历和访问各个节点。 示例代码: ```java import javax.xml.parsers.DocumentBuilder; import javax....

    java读取xml文件导入到mysql数据库中

    xml文件导入到mysql数据库中,包括文件:ConnectionUtils.java,InsertDT.java,db_mysql.properties,test01.xml,需要的jar包dom4j-1.6.1.jar,mysql-connection-java-3.1.1.3-bin.jar,jaxen-1.1-beta-7.jar

    Java读取xml文件的四种方法.doc

    Java 读取 XML 文件的四种方法 在 Java 中读取 XML 文件有多种方法,本文将介绍四种常见的方法,分别使用 DOM、DOM4J、JDOM 和 SAX 解析器。 第一种方法:使用 DOM DOM(Document Object Model)是一种树形结构,...

    java读取和写入xml文件

    在Java中,处理XML文件主要有四种方式:DOM(Document Object Model)、SAX(Simple API for XML)、StAX(Streaming API for XML)以及JAXB(Java Architecture for XML Binding)。下面将详细介绍这四种方法。 1....

    java导入导出xml文件

    本文将深入探讨如何在Java中进行XML文件的导入与导出。 首先,理解XML的基本结构至关重要。XML文件由一系列的元素构成,每个元素都有可能包含子元素或者文本内容。元素通过开始标签 `&lt;tag&gt;` 和结束标签 `&lt;/tag&gt;` ...

    java读写xml文件的方法

    ### Java读写XML文件的方法详解 #### 一、概述 在Java编程中,XML(Extensible Markup Language,可扩展标记语言)是一种广泛使用的数据交换格式。由于其良好的跨平台特性和自描述性,使得XML成为了许多应用程序...

    java读取XMl数据

    以上就是Java读取XML数据的主要方法。选择哪种方式取决于具体的需求,如处理大型XML文件时,SAX和StAX更为高效;而如果需要频繁查询和修改XML结构,DOM和DOM相关的库可能更适合。在实际开发中,可以根据项目规模、...

    使用Java读取XML配置文件

    使用 Java 读取 XML 配置文件 Java 语言和 XML 技术可以说是黄金组合,网上已经有很多文章介绍 XML 在电子商务中的数据交换的作用。但是在平时系统开发中,我们不一定都用到数据交换,是否无法使用 XML?当然不是...

    java实现Xml文件读写

    本项目“java实现Xml文件读写”提供了一个完整的工程实例,包含了对XML文件进行添加、修改和读取的基本操作。 首先,要实现XML文件的读取,Java提供了`javax.xml.parsers`和`org.w3c.dom`这两个核心包。其中,`...

Global site tag (gtag.js) - Google Analytics