Java网络编程
Posted linlf03
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java网络编程相关的知识,希望对你有一定的参考价值。
一、ISO/OSI七层参考模型
OSI(Open Systen Interconnection) 参考模型将网络的不同功能划分为7层
二、OSI各层所使用的协议
1、应用层: 远程登录协议Telnet,文件传输协议FTP,超文本传输协议HTTP,域名服务DNS、简单邮件传输协议SMTP,邮局协议POP3等。
2、传输层: 传输控制协议TCP,用户数据报协议UDP
TCP: 面向连接的可靠的传输协议
UDP: 是无连接的,不可靠的传输协议。
3、网络层: 网际协议IP,Internet互联网控制报文协议ICMP、Intenrnet组管理协议IGMP
三、两类传输协议 TCP/UDP
1、TCP是Transfer Control Protocol的简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。
2.UDP是User Datagram Protocol的简称,是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的。(通常用于传递音频或者视频)
四、TCP/ IP与OSI参考模型的对应关系
五、URLConnection使用
public class UrlConnection1 { public static void main(String[] args) throws Exception { URL url = new URL("https://www.infoq.com"); URLConnection conn = url.openConnection(); InputStream is = conn.getInputStream(); OutputStream os = new FileOutputStream("d:\\\\infoq.txt"); byte[] buffer = new byte[2048]; int length = 0; while( -1 != (length = is.read(buffer, 0, buffer.length))){ os.write(buffer, 0, length); } is.close(); os.close(); } }
以上是关于Java网络编程的主要内容,如果未能解决你的问题,请参考以下文章
VSCode自定义代码片段14——Vue的axios网络请求封装
VSCode自定义代码片段14——Vue的axios网络请求封装