更新时间:2020-05-08 16:23:38 来源:极悦 浏览1828次
JavaWeb开发能力是Java程序员的必备基础能力,因此掌握它十分重要。今天本文要和大家分享的是JavaWeb开发中有关XML学习笔记的整理。主要内容包括了XML的概念、XML的语法、约束和解析。感兴趣的朋友就一起来看看吧!
XML全称是ExtensibleMarkupLanguage,它是一种可扩展标记语言。所谓的可扩展,指的是标签都是自定义的。XML的功能是存储数据,包括配置文件和在网络中传输。XML与html的区别是XML标签都是自定义的,而html标签是预定义。XML的语法严格但html语法松散。另外XML是存储数据的,html是展示数据
(1)基本语法:
(2)快速入门:
<?xmlversion='1.0'?>
<users>
<userid='1'>
<name>zhangsan</name>
23
<gender>male</gender>
<br/>
</user>
<userid='2'>
<name>lisi</name>
24
<gender>female</gender>
</user>
</users>
(3)组成部分:
1)文档声明
格式:<?xml属性列表?>
属性列表:
version:版本号,必须的属性
encoding:编码方式。告知解析引擎当前文档使用的字符集,默认值:ISO-8859-1
standalone:是否独立
取值:
yes:不依赖其他文件
no:依赖其他文件
2)指令:
<?xml-stylesheettype="text/css"href="a.css"?>
3)标签:标签名称自定义的
规则:
名称可以包含字母、数字以及其他的字符;名称不能以数字或者标点符号开始;名称不能以字母xml(或者XML、Xml等等)开始;名称不能包含空格
4)属性:id属性值唯一
5)文本:
CDATA区:在该区域中的数据会被原样展示.
格式:<![CDATA[数据]]>
作为框架的使用者需要能够在xml中引入约束文档,能够简单的读懂约束文档。其分类有:DTD一种简单的约束技术。DTD引入dtd文档到xml文档中;内部dtd:将约束规则定义在xml文档中;外部dtd:将约束的规则定义在外部的dtd文件中;本地:<!DOCTYPE根标签名SYSTEM"dtd文件的位置">;网络:<!DOCTYPE根标签名PUBLIC"dtd文件名字""dtd文件的位置URL">。Schema一种复杂的约束技术。引入填写xml文档的根元素,引入xsi前缀.
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"引入xsd文件命名空间.
xsi:schemaLocation="http://www.itcast.cn/xmlstudent.xsd"为每一个xsd约束声明一个前缀,作为标识xmlns="http://www.itcast.cn/xml"
<studentsxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.itcast.cn/xml"
xsi:schemaLocation="http://www.itcast.cn/xmlstudent.xsd">
(1)操作xml文档
(2)解析xml的方式:
(3)xml常见的解析器:
(4)Jsoup
jsoup是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
1)快速入门:
步骤是导入jar包;获取Document对象;获取对应的标签Element对象;获取数据。代码如下:
//2.1获取student.xml的path
Stringpath=JsoupDemo1.class.getClassLoader().getResource("student.xml").getPath();
//2.2解析xml文档,加载文档进内存,获取dom树--->Document
Documentdocument=Jsoup.parse(newFile(path),"utf-8");
//3.获取元素对象Element
Elementselements=document.getElementsByTag("name");
System.out.println(elements.size());
//3.1获取第一个name的Element对象
Elementelement=elements.get(0);
//3.2获取数据
Stringname=element.text();
System.out.println(name);
2)对象的使用:
3)Document:文档对象。代表内存中的dom树
获取Element对象
4)元素对象集合
Elements:元素Element对象的集合。可以当做ArrayList<Element>来使用
5)快捷查询方式:
①selector:选择器
使用的方法:Elementsselect(StringcssQuery)
语法:参考Selector类中定义的语法
②XPath:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言
使用Jsoup的Xpath需要额外导入jar包。
查询w3cshool参考手册,使用xpath的语法完成查询
代码:
//1.获取student.xml的path
Stringpath=JsoupDemo6.class.getClassLoader().getResource("student.xml").getPath();
//2.获取Document对象
Documentdocument=Jsoup.parse(newFile(path),"utf-8");
//3.根据document对象,创建JXDocument对象
JXDocumentjxDocument=newJXDocument(document);
//4.结合xpath语法查询
//4.1查询所有student标签
ListjxNodes=jxDocument.selN("//student");
for(JXNodejxNode:jxNodes){
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.2查询所有student标签下的name标签
ListjxNodes2=jxDocument.selN("//student/name");
for(JXNodejxNode:jxNodes2){
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.3查询student标签下带有id属性的name标签
ListjxNodes3=jxDocument.selN("//student/name[@id]");
for(JXNodejxNode:jxNodes3){
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.4查询student标签下带有id属性的name标签并且id属性值为itcast
ListjxNodes4=jxDocument.selN("//student/name[@id='itcast']");
for(JXNodejxNode:jxNodes4){
System.out.println(jxNode);
}
以上就是极悦java培训机构的小编针对“Javaweb开发实战视频,XML学习整理”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务
Javaweb热门基础学习
EL&JSTL:
Filter&Listener:
JSP:
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习