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 循 ...
随机推荐
- PropertiesUtil 获取文件属性值
有时候不要把一些属性值写死在代码中,而是写在配置在文件中,方便更改 PropertiesUtil工具类:读取key-value形式的配置文件,根据key获得value值 1.测试类 public c ...
- 2.16 C++类与new和delete操作符
参考: http://www.weixueyuan.net/view/6347.html 总结: 当我们需要为类对象动态分配存储空间时,我们应该使用C++语言提供的new与new[]操作符,而不要使用 ...
- poj3080(kmp+枚举)
Blue Jeans Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20163 Accepted: 8948 Descr ...
- python day05 作业答案
1. b.不可以 c.tu=("alex",[11,22,{"k1":"v1","k2":["age" ...
- Centos7 zip unzip 安装和使用
安装: yum install -y unzip zip: 解压 unzip filename.zip
- async 函数--学习笔记一
含义: ES2017 标准引入了 async 函数,使得异步操作变得更加方便.async 函数是什么?一句话,它就是 Generator 函数的语法糖. 前文有一个 Generator 函数,依次读取 ...
- 神州数码RIP路由协议
实验要求:熟练掌握RIP配置方法 拓扑如下 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface s0/1 进入端口 physical-l ...
- POJ2785-4 Values whose Sum is 0
传送门:http://poj.org/problem?id=2785 Description The SUM problem can be formulated as follows: given f ...
- 如何用DAX实现查看每个月中不同类别排名前一位,以及一个简单的svg案例
现在给大家带来的是如何用DAX实现查看每个月中不同类别的排名前一位,最终完成效果如下!!! 首先我们需要两张简单的表 基数表 和类别表 当我们创建好表之后,我们再创建一个表格,然后我们将类别表里的列值 ...
- Eclipse 通过JPA自动生成注解实体
hibernate是JPA最常用的实现之一,而且hiberante自身也对注释语法进行了支持.现在再不用去看那一堆堆的XML映射了.而且eclipse还提供了从数据库直接生成Entity Class的 ...