本系列文章对Java领域中常用的几种操作XML的编程方式进行归纳,归纳的知识属于基础范畴,概括的不全面。主要通过实例操作方法进行演示,原理部分的讲解甚少,如需请查阅详细文档资料。本文分为以下几个部分:
(一)JAXP简介
(二)使用DOM接口操作xml
(三)使用SAX接口操作xml
(六)使用JAXB进行java对象和xml格式之间的相互转换
(一)JAXP简介
JAXP(Java API for XML Processing)是Java XML程序设计的应用程序接口的简称,它提供解析、创建XML文档的能力。包括JSR5(JAXP1.0)和JSR63(JAXP1.1和JAXP1.2)两个规范。JAXP提供解析XML文档能力的三种基本接口为:
DOM接口
SAX接口
StAX接口
1、开发实例环境准备:
使用w3cschool文档的books.xml作为示例,如下:
1 <?xml version="1.0" encoding="UTF-8"?> 2 3 4 5 <bookstore> 6 7 8 9 <book category="COOKING"> 10 11 <title lang="en">Everyday Italian</title> 12 13 <author>Giada De Laurentiis</author> 14 15 <year>2005</year> 16 17 <price>30.00</price> 18 19 </book> 20 21 22 23 <book category="CHILDREN"> 24 25 <title lang="en">Harry Potter</title> 26 27 <author>J K. Rowling</author> 28 29 <year>2005</year> 30 31 <price>29.99</price> 32 33 </book> 34 35 36 37 <book category="WEB"> 38 39 <title lang="en">XQuery Kick Start</title> 40 41 <author>James McGovern</author> 42 43 <author>Per Bothner</author> 44 45 <author>Kurt Cagle</author> 46 47 <author>James Linn</author> 48 49 <author>Vaidyanathan Nagarajan</author> 50 51 <year>2003</year> 52 53 <price>49.99</price> 54 55 </book> 56 57 58 59 <book category="WEB"> 60 61 <title lang="en">Learning XML</title> 62 63 <author>Erik T. Ray</author> 64 65 <year>2003</year> 66 67 <price>39.95</price> 68 69 </book> 70 71 72 73 </bookstore>
2、使用的JDK版本为JDK1.8_102
3、使用Eclipse IDE开发