XML基础入门
一.概念
XML: Extensible markup Language,可拓展标记语言
功能:存储数据
1.配置文件
2.在网络中传输数据
html和xml的区别:
1.xml标记全是自定义的
2.xml的语法严格
3.xml是存储数据,html是展示数据
二.语法
1.xml文档的后缀名是.xml
2.xml第一行必须是定义的文档声明
<?xml version="1.0" encoding="utf-8" standalone='no' ?>
注:version:版本号,必须写的属性
encoding:编码方式
standalone:是否独立,yes:不依赖其他文件,no:依赖其它文件
3.xml文档中有且只能有一个根标签
4.属性值必须用引号
5.标签必须关闭
6.xml标签名称区分大小写
7.约束:规定xml文档书写规则。两种约束分别为(DTD约束和schema)
三.解析
即操作xml文档,将文档中的数据读取到内存中。
1.操作xml文档
读取:将文档中的数据读取到内存中
写入:将内存中的数据保存到xml文件中,持久化的存储
2.解析xml的方式
方式一:dome将标记语言一次性加载进内存,在内存中形成一颗DOM树。
优点:操作方便,可以进行CRUD操作
缺点:消耗内存
方式二:SAX逐行读取,基于事件驱动,不占内存,只能读取不能增删改。
3.常见的解析器
JAXP:sun公司解析器,支持dom和sax两种思想
DOM4J:
Jsoup:一套API 直接解析url 地址和标记内容
PULL:Android 操作系统内置的解析器,解析方式是SAX 方式
4.Jsoup入门程序
使用步骤:
1 导包 jsoup-1.11.2包 ,编写XML文件(放在src下)
2获得Document 对象
3 获取对应的标签Element
4 获取数据
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements; import java.io.File;
import java.io.IOException; public class Demo1Jsoup {
public static void main(String[] args) throws IOException {
// 2获得Document 对象
String path = Demo1Jsoup.class.getClassLoader().getResource("st.xml").getPath();
Document document = Jsoup.parse(new File(path), "utf-8");
// 3 获取对应的标签Element
Elements elements = document.getElementsByTag("name");
// System.out.println(elements);
System.out.println(elements.size());
//得到第二个name标签的值
Element name = elements.get(1);
// 4 获取数据
System.out.println(name);
}
}
5.对象的使用
★Jsoup工具类可以解析XML、HTML文档,返回Document对象。通过parse也可以解析XML文档,parse(URL url,int timeoutMills)。
★通过Document文档对象获得对应的标签Element。getElementByTag("标签名");getElementById(String id);
获得属性值:
String attr(String key)通过属性名获取值
只获得文本内容:
String text();
String html(); 包括标签的字符串内容
★selector选择器:
select(String cssQuery);
XML基础入门的更多相关文章
- C# XML基础入门(XML文件内容增删改查清)
前言: 最近对接了一个第三方的项目,该项目的数据传输格式是XML.由于工作多年只有之前在医疗行业的时候有接触过少量数据格式是XML的接口,之后就几乎没有接触过了.因此对于XML这块自己感觉还是有很多盲 ...
- [Spring框架]Spring AOP基础入门总结二:Spring基于AspectJ的AOP的开发.
前言: 在上一篇中: [Spring框架]Spring AOP基础入门总结一. 中 我们已经知道了一个Spring AOP程序是如何开发的, 在这里呢我们将基于AspectJ来进行AOP 的总结和学习 ...
- [Spring框架]Spring AOP基础入门总结一.
前言:前面已经有两篇文章讲了Spring IOC/DI 以及 使用xml和注解两种方法开发的案例, 下面就来梳理一下Spring的另一核心AOP. 一, 什么是AOP 在软件业,AOP为Aspect ...
- .NET ORM 的 “SOD蜜”--零基础入门篇
PDF.NET SOD框架不仅仅是一个ORM,但是它的ORM功能是独具特色的,我在博客中已经多次介绍,但都是原理性的,可能不少初学的朋友还是觉得复杂,其实,SOD的ORM是很简单的.下面我们就采用流行 ...
- SpringMVC基础入门
一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 1 2 3 4 5 6 ...
- osgEarth基础入门
osgEarth基础入门 2015年3月21日 16:19 osgEarth是基于三维引擎osg开发的三维数字地球引擎库,在osg基础上实现了瓦片调度插件,可选的四叉树调度插件,更多的地理数据加载插件 ...
- T4教程1 T4模版引擎之基础入门
T4模版引擎之基础入门 额,T4好陌生的名字,和NuGet一样很悲催,不为世人所熟知,却又在背后默默无闻的奉献着,直到现在我们项目组的人除了我之外,其它人还是对其豪无兴趣,基本上是连看一眼都懒得看 ...
- [.ashx檔?泛型处理例程?]基础入门#1....能否用中文教会我?别说火星文?
原文出處 http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/20/ashx_beginner_01.aspx [.ashx檔?泛型处理例程? ...
- Python基础入门教程
Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...
随机推荐
- CMOS集成门电路
CMOS集成门电路:mos管构成的集成门电路 CMOS:互补对称金属氧化物半导体器件 CMOS反相器电路是由N沟道MOSFET和P沟道MOSFET互补而成:特点静态功耗近视为0,电源电压可在很宽的范围 ...
- X86汇编语言实现的贪吃蛇游戏
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- :工厂模式2:抽象工厂模式--Pizza
#ifndef __INGREDIENT_H__ #define __INGREDIENT_H__ #include <iostream> using namespace std; cla ...
- git中误删提交(commit)后,怎么恢复
“xml文件存储数据”提交被我误操作,即使用reset --hard删除了,然后又进行了三次提交,发现删除的提交有用,需要找回来, 于是找了好久,找到好方法: 1.进入工程下的.git文件下,git ...
- SharePoint REST API - REST请求导航的数据结构
博客地址:http://blog.csdn.net/FoxDave 从一个既定的URL获取其他SharePoint资源 当你用SharePoint REST服务进行开发的时候,你经常会从指定的一个 ...
- 20165326 java第四周学习笔记
第四周学习笔记 ch5 子类和父类 子类只能有一个父类 使用关键字extendsyclass 子类 extends 父类 系统默认的祖先类Object(java.lang包中) 继承:子类继承父类的方 ...
- shell脚本实例-跟踪网站日常变动
#!/usr/bin/bash #用途:跟踪网页是否有更新 if [ $# -ne 1 ];then echo -e "$Usage $0 URl " exit fi first_ ...
- php优秀框架codeigniter学习系列——前言
php的框架众多,笔者用过的包括thinkphp,CI,smarty,laravel,也用过一些公司自己开发的框架. thinkphp是国人自己开发的,我大概用过一段时间,基本功能都还好,应该也还比较 ...
- debian镜像下载地址
http://cdimage.debian.org/debian-cd/9.8.0-live/amd64/iso-hybrid/
- python day05作业