XML要点总结

XML要点总结,第1张

XML要点总结 XML可扩展标记语言 1.概述 1.概念

XML(Extensible Markup Language可拓展标记语言)

2.功能

存储数据,一般用于做配置文件,或者在网络中传输(通常用json文件)

3.XML和HTML区别
    xml标签是自定义的,所以需要有约束文件。xml的语法严格,html语法松散xml主要用于存储数据,html展示数据
4.语法

文档后缀名xml第一行文档声明xml中有且仅有一个根标签属性值要用(单双)引号引起来区分大小写 5.快速入门


		
			
				zhangsan
				23
				male
				
lisi 24 female
6.主要部分 1.文档声明 1.格式

2.属性列表

version:版本号,一般用1.0encoding:编码方式。standalone:是否独立,yes 或者 no用于表示是否依赖其他文件 2.属性

id值是唯一的

2.约束:规定XML文档的书写诡诈 1.要求

能够在xml中引入约束文档能够简单读懂约束文档 2.分类 1.DTD:document Type Define,简单的文档类型约束技术 1.将约束规则引入xml文件中两种方式

本地:网络: 2.快速入门





 
        
        
        
        
        
         
        ]>

	
		张三
		12
		
	
	
		李四&msg;
		12
		
	



2.Schema:略微复杂的xml文档约束技术





    
 	
 		tom
 		18
 		male
 	
		 
 
3.解析 1.方式

DOM

将标记语言一次性加载进内存形成DOM树。因为比较占内存,所以一般用于PC端

SAX

逐行读取,是基于事件驱动的,一般用于手机端,因为内存小。

2.XML解析器JSOUP 1.快速入门 1.步骤
    导入jsoup的jar包获取document对象获取标签Element对象获取数据
2.代码
 String path = JsoupDemo1.class.getClassLoader().getResource("student.xml").getPath();
	        //2.2解析xml文档,加载文档进内存,获取dom树--->document
	        document document = Jsoup.parse(new File(path), "utf-8");
	        //3.获取元素对象 Element
	        Elements elements = document.getElementsByTag("name");
	
	        System.out.println(elements.size());
	        //3.1获取第一个name的Element对象
	        Element element = elements.get(0);
	        //3.2获取数据
	        String name = element.text();
	        System.out.println(name);

2.主要对象使用 1.document

Jsoup静态方法parsexml文件获取

2.Element

通过getElementByxx获取,下面也会介绍快捷的方式select获取xpath获取

3.获取属性值

String attr(String key)

4.获取文本

string text()string html() 3.快捷查询1selector

select(String cssQuery),就是css中定位元素的方法参考文档中的Selector类中的方法 4.快捷查询2xpath

需要导入xpath对应的jar包

new JXdocument对象,参数为jsoup获取的document对象

代码

//1.获取student.xml的path
		        String path = JsoupDemo6.class.getClassLoader().getResource("student.xml").getPath();
		        //2.获取document对象
		        document document = Jsoup.parse(new File(path), "utf-8");
		
		        //3.根据document对象,创建JXdocument对象
		        JXdocument jxdocument = new JXdocument(document);
		
		        //4.结合xpath语法查询
		        //4.1查询所有student标签
		        List jxNodes = jxdocument.selN("//student");
		        for (JXNode jxNode : jxNodes) {
		            System.out.println(jxNode);
		        }
		
		        System.out.println("--------------------");
		
		        //4.2查询所有student标签下的name标签
		        List jxNodes2 = jxdocument.selN("//student/name");
		        for (JXNode jxNode : jxNodes2) {
		            System.out.println(jxNode);
		        }
		
		        System.out.println("--------------------");
		
		        //4.3查询student标签下带有id属性的name标签
		        List jxNodes3 = jxdocument.selN("//student/name[@id]");
		        for (JXNode jxNode : jxNodes3) {
		            System.out.println(jxNode);
		        }
		        System.out.println("--------------------");
		        //4.4查询student标签下带有id属性的name标签 并且id属性值为itcast
		
		        List jxNodes4 = jxdocument.selN("//student/name[@id='itcast']");
		        for (JXNode jxNode : jxNodes4) {
		            System.out.println(jxNode);
		        }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5709772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存