Java XML文档

概念

XML(EXtensible Markup Language),可扩展标记语言。可扩展就是<>内的东西可以自己定义,可以随便写。标记语言就是加了<>符号的 。HTML是超文本标记语言,不可以拓展,因为你写个<p> 浏览器知道这个是段落,你写个<shuyunquan>浏览器就不认识了,所以不可拓展。



XML书写格式

  1. 第一行是固定的:<?xml version="1.0" encoding="UTF-8"?>,告诉别人,我是xml文件。
  2. 只能有一个根元素
  3. 没了


其他语法和注意点

  1. <!--这是注释 -->
  2. <元素名 属性名="属性值">元素内容</元素名>,元素也称标签,XML文件是由一系列标签构成的。属性值不要使用乱七八糟的符号,如>\/<等
  3. 所有XML元素都必须有结束标签(</……>)
  4. XML标签对大小写敏感
  5. XML必须正确的嵌套
  6. 同级标签以缩进对齐
  7. 元素名称可以包含字母、数字或其他的字符
  8. 元素名称不能以数字或者标点符号开始(<5name>是错误的;<name5>是正确的)
  9. 元素名称中不能含空格(<student name>是错误的;<studentname>是正确的的)


DOM解析XML

  1. 文档对象模型(Document Object Model)
  2. DOM把XML文档映射成一个倒挂的树
<book id=”1234”>
    <title>三国演义</title>
    <author>罗贯中</author>
    <price>30元</price>
</book>

所有带尖括号的叫元素节点,只有文本文字的叫属性节点,id=”1234”叫做属性节点

树形结构:易于增删改查

DOM解析XML文件步骤:

  1. 创建解析器工厂对象
  2. 解析器工厂对象创建解析器对象
  3. 解析器对象指定XML文件创建Document对象
  4. 以Document对象为起点操作DOM树

类似这种套路:

 1 import javax.xml.parsers.*;
 2 import org.w3c.dom.*;
 3 import java.io.*;
 4 import java.net.URL;
 5
 6 public class XMLUtil {
 7
 8     public static Object getBean() {
 9         try {
10             //创建DOM文档对象
11             DocumentBuilderFactory dFactory=DocumentBuilderFactory.newInstance();//文档制造者工厂创建了一个 文档制造者工厂对象
12             DocumentBuilder builder=dFactory.newDocumentBuilder();//文档制造者类 通过 文档制造者工厂 创造一个 文档制造者对象
13             Document doc;//文档制造者 创建 文档
14             doc=builder.parse(new File("src/homework/config.xml"));//解析xml文件
15
16             //获取包含类名的文本节点
17             NodeList nl=doc.getElementsByTagName("className");//文本节点列表里有很多被className标签夹着的内容
18             Node classNode=nl.item(0).getFirstChild();
19             //item(0)表示引用列表里第一个节点,这里只有一个。getFirstChild表示获取该节点的第一个孩子。
20             String cName=classNode.getNodeValue();
21
22             //通过类名生成实例对象并返回
23             Class c=Class.forName(cName);
24             Object obj=c.newInstance();
25             return obj;
26         }catch(Exception e) {
27             e.printStackTrace();
28             return null;
29         }
30     }
31 }

套路

参考:https://blog.csdn.net/baidu_29343517/article/details/81609732

原文地址:https://www.cnblogs.com/shoulinniao/p/11704538.html

时间: 2024-10-19 00:32:18

Java XML文档的相关文章

JAVA对象和XML文档、原来他们之间还有这一出

最近项目开发中遇到一个问题,访问接口不再通过url地址请求的方式,而是 通过socket发送xml格式的报文到指定服务器来进行信息的统一认证.. 因此组装xml格式的报文字符串以及解析服务器返回的xml格式的字符获得所需数据成了 解决问题的关键..在这之前,以为会有点难...做完之后,然并卵,也就那么一回事... LZ主要用的xStream类..这个类的完美地解决了XML文档和JAVA对象之间的转换.. 由于刚刚接触这个类...对于里面提供的很多功能还没细细挖掘..只是简单地实现了 我想要实现的

浅谈用java解析xml文档(四)

继续接上一文,这一阵子因为公司项目加紧,导致最后一个解析xml文档的方式,还没有总结,下面总结使用dom4J解析xml. DOM4J(Document Object Model for Java) 使用dom4j解析,个人认为是四种解析方式里面最方便的一种,DOM4J是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件.如今你可以看到越来越多的Java软件都在使用DOM4J来读写XML,特别值得一提的是连Sun的JAXM也在用D

浅谈用java解析xml文档(三)

接上一篇,本文介绍使用JDOM解析xml文档, 首先我们还是应该知道JDOM从何而来,是Breet Mclaughlin和Jason Hunter两大Java高手的创作成果,2000年初, JDOM作为一个开放源代码项目正式开始研发.JDOM是一种解析XML的Java工具包. JDOM基于树状结构,利用纯JAVA技术对XML文档实现解析.生成.序列化及其它操作. 我们从以下步骤开始解析: (1).通过JDOM的API创建一个SAXBuilder的对象 SAXBuilder saxBuilder

java将XML文档转换成json格式数据

功能 将xml文档转换成json格式数据 说明 依赖包: 1. jdom-2.0.2.jar : xml解析工具包; 2. fastjson-1.1.36.jar : 阿里巴巴研发的高性能json工具包 程序源码 package com.xxx.open.pay.util; import com.alibaba.fastjson.JSONObject; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdo

Java获取XML节点总结之读取XML文档节点

dom4j是Java的XML API,用来读写XML文件的.目前有很多场景中使用dom4j来读写xml的.要使用dom4j开发,需要下载导入dom4j相应的jar文件.官网下载:http://www.dom4j.org/dom4j-1.6.1/github下载:http://dom4j.github.io/下载解压之后如图所示: 我们只需要把dom4j-1.6.1.jar文件构建到我们开发项目中就可以了. 下面就以Eclipse创建java项目的构建方法为例说明:声明:本Java项目的开发环境J

浅谈用java解析xml文档(一)

关于xml本身的语法及使用的环境不多说了,网上有很多规则, 然对xml文档进行解析,一般分为四种解析方式,基于java官方文档的Dom 和Sax解析,还有就是基于 第三方jar包的 Jdom 和 Dom4j解析. 一.首先我们来看Dom解析: 1.定义工厂,使应用程序能够从 XML 文档获取生成 DOM 对象树的解析器. DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 在应用程序获取对 DocumentBuil

org.w3c.dom(java dom)解析XML文档

位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效果可能会不理想 首先来了解点Java DOM 的 API:1.解析器工厂类:DocumentBuilderFactory 创建的方法:DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2.解析器:DocumentBuilder 创建方法:通过解析器工厂类来获得 DocumentBu

Java中Dom解析xml文档

xml文档 <?xml version="1.0" encoding="UTF-8"?> <bookstore> <book id="1"> <name>你好</name> <author>李四</author> <price>80</price> </book> <book id="2"> &l

java通过dom4j处理xml文档

最近在用dom4j处理xml的数据接口,将java利用dom4j处理xml的过程记录下来. 导入jar包:dom4j-1.6.jar 下载地址:http://www.java2s.com/Code/JarDownload/dom4j/dom4j-1.6.jar.zip 自己写了个xml文档 1 <school> 2 <student> 3 <name>老子</name> 4 <no>20140804</no> 5 <majors