JavaWeb 第十二天 XML&HTTP协议
作者:互联网
Day12
一、XML
xml: 可扩展标记语言: 标签可以任意定义,不需要进行编译,浏览器就可以解析
xml与http的区别:
1.xml 标签是可以任意定义 但是 html 的是不可以的
2.xml是数据的存储(配置文件) html 主要是做页面的显示
3.html5 比较火的前端技术有有xml+html结合,html5是依赖于xml
xml 的一个基本的结构: 1.xml的声明 2. 文档的基础信息(标签节点 属性节点 文本节点)
- 只能存在一个跟节点
- 标签一般都是成双的 如果是单个必须是结束标签
- 标签严格区别大小写
- 严格遵循驼峰命名
- 要注意标签与标签之间的缩进与空格
xml: 验证性解析错误: 解析xml的一些基本的语法
非验证性解析错误 :dtd 与就是规定xml里只能写这些东西
xml 中的一些特殊的符号:
< <
> >
& *amp;
' &aops;
" "
xml 解析 的常见的方式
dom dom4j =》 是把这个xml都会加载到内存里,然后对其进行解析(web) dom 4j 就是对dom的一个优化
sax ==>边加载,边解析(移动端)
dom 解析 ==> 1.第一步也就是需要把xml转换成一个dom树
具体的步骤 1.得到解析器工厂对象DocumentBuilderFactory
2.得到解析器对象
3.调用其方法把其转换成doc 对象 db.parse(file); 需要传递一个文件对象的参数
2.得到xml的信息: 1.根据getElementsByTagName()方法来获取到 所有的brand节点
2.遍历集合(NoteList) 获取集合的长度是getLength()
3.得到具体的节点
4.转换哼元素节点 获取元素中具体的值 getAttribute("name")
5. 获取下面的子节点:getChildNodes();
6.注意:判断其节点的类型 Node.ELEMENT_NODE
3.增加阶段的具体步骤:1.创建一个节点
2.设置其属性
3.添加父子关系
4.一层一层添加之后追加到根节点
4 保存到xml里 : 1.得到其转换的工厂TransformerFactory
2.得到准换器Transformer
3.调用其方法 tf.transform() 需要传递两个参数 第一个是DOMSource(不要忘记把dom对象放入) 第二个参数是:StreamResult
5.删除 : 1.根据getElementsByTagName()方法来获取到 所有的brand节点
2.遍历集合(NoteList) 获取集合的长度是getLength()
3.通过父节点来删除自己
6.修改与删除是类似的(仿照)
dom4j 解析xml 其实就是对dom的封装 简化了代码 需要导入jar包
dom4j 的核心的对象 : SAXReader sr.read(file); 把一个 文件转化成一个dom对象(是在内存里)
XMLWriter .write(doc) 把dom 对象写入在文件了
OutputFormat 格式 工厂类 主要是写入的编码格式进行设置
常规的一些方法: getRootElement(); 获取到根节点的方法
elementIterator() 把多个集合转换成迭代器
elementType.attributeValue("name") 根据节点来获取到具体的值
addElement("Brand"); 创建一个节点的对象
elBrand.getParent().remove(elBrand); 通过父节点来删除子节点
dom4j解析:
二、HTTP协议
http协议介绍
HTTP协议(HyperText Transfer
Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协 议,所有的WWW文件都必须遵守这个标准。
HTTP是基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)
HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。如下图http/https
HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服器模型。HTTP是一个无状态的协议。
HTTP默认的端口号为80,HTTPS的端口号为443。
超文本传输协议 具有一次性连接 、 无状态连接等特点;主要是对文本进行传输(也可以对文件进行传输 需要在请求头里设置传输的格式)
tcp 慢 稳定 不会丢失数据 ==> 三次握手
udp 快 会丢失数据(发包裹)
两者都是socket 协议(tomcat就是基于socket 进行编程的)
http 是目前最通用的网络协议
http 协议就是网络传输的一种规范 :无非就是客户端发送请求 服务器做出相应
http 协议的版本分为1.0 每一次连接请求都需要去创建一个连接, 而且每次只能请求一个数据
1.1 每次都需要 去创建一个连接 ,每次可以请求多个 多个数据
http 协议: 请求的协议 (也就是客户端传输发到服务器的一个规范或者约束)
响应的协议(也就是服务器给客户端的响应的约束或者规范)
就是以二进制进行传输 大部分都使用http1.1 的版本 ,1.1 版本效率更高
请求的协议 分为 请求行 请求头 请求内容体
get :传递的参数在放在请求头上 不安全 get 与一般用于文件的下载 get提交数据是有长度限制
post 传递到参数是放下内容体中 安全性高 post 提交数据 post 是没有长度限制的
响应的协议: 响应行 响应头 响应体
响应行 :http 1.0 200 ok 第一个是表示连接的版本 第二个是表示连接的状态 ok 表示成功
响应的状态码: 1. 200 成功
2. 404 表示 页面找不到
3 302 表示重定向
4. 500 表示代码有错
标签:XML,协议,HTTP,xml,dom,http,第十二天,节点 来源: https://blog.csdn.net/qq_45451251/article/details/101076281