JAVA——数据解析&TCP&UDP&Http

61 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,[点击查看活动详情]

数据解析

XML:是w3c组织下的产品,功能:存储数据和传输数据。广泛用于数据配置方面,标签完全自定义,语法非常严格。
HTML:是w3c组织下的产品,功能:存储数据和传输数据。广泛用于web方面,标签固定,语法不严格。\

解析XML,HTML中的数据

1,DOM解析,思路。解析XML时,生成一颗DOM(document文档)树(在内存中),我们就可以对树中的内容进行任意修改和访问。
优点:任意修改和访问
缺点:文档的层次过多,则生成的树也就越大,内存占用率越高。
2,SAX解析,思路.针对于DOM是一种更快速,更高效的解析方式,主要用树遍历算法来进行结点访问。需要到哪里,只需要遍历该路经上的结点即可
优点:更快速,跟高效,省内存。
缺点:不知道当前生成树的全貌,不能增删。
3,Dom4J解析,实现 需要jar工具.\

h ttps://dom4j.github.io/ -> dom4j-1.6.1 -> dom4j-1.6.1.jar。(由使用说明)
使用:在项目新建new文件夹folder(lib) -> 复制到lib下。在jar包里Bulid Path--add to Bulid Path \

解析特点:按照层级来获取元素.
4,JSoup解析,实现 需要jar工具.

h ttps://jsoup.org/ -> Getting started -> Download .同上复制到lib下,连接\

不仅解析XML,也可以解析HTML。\ 解析特点:按照名称来获取元素。

TCP编程

TCP:(Transmission Control Protocol)传输控制协议。
面向连接(两端之间想要数据传输,必须先建立一个持久性通道)\ 可靠(数据不能有丢包的现象)
基于字节流的传输层通信协议
三次握手。\ 两个端:客户端(主动发出连接请求的)Clint(向服务器发送请求),服务端(被动接收连接的请求,相应客户端)Server。
1,先去建立稳定的连接
2,通过流来传输数据

UDP编程

UDP:(User Datagram Protocol)用户报文协议
为应用程序提供了一种无需建立连接就可以发送封装的IP数据包方法。
无连接:类似于广播。会有丢包。
不可靠的
1,没有连接\
2,数据以包形式来发送。

Http编程

http:(Hyper Text Transfer Protocol)超文本传输协议。简单的请求-响应协议。服务器与浏览器之间信息传递规范。
1,基于TCP协议。
2,请求-响应协议
3,用于浏览器。浏览器的功能:获取服务器的数据,并将数据解析,已合适的方式显示给用户,并获取用户数据输入
可靠。

请求头:Accept:接收的数据类型。User-Agent:传的是客户端计算机系统+浏览器的一些具体信息。Host:服务器的域名和端口号。
响应头:Http服务端