java网络编程总结

本文介绍了网络编程的基本概念,包括网络编程的作用、通讯要素如IP地址、端口号和传输协议,以及网络模型等内容。此外还详细讲解了UDP和TCP两种主要的传输协议的工作原理和使用方法。

第一部分:网络编程

1、概述:

网络编程的的作用是实现两个设备之间的数据交换。

数据交互,就是把一个设备中的数据发送给另外的设备,然后接受设备反馈的信息。

现在的网络编程基本上都是基于请求/响应方式的,也就是一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。

在网络编程中,发起连接程序,也就是发送第一次请求的程序,被称作客户端(Client),等待其他程序连接的程序被称作服务器(Server)。

客户端程序可以在需要的时候启动,而服务器为了能够时刻响应连接,则需要一直启动。

2、网络通讯要素

1、IP地址:InetAddress

IP地址是网络中设备的标识,对应一个主机名,主机名更易记忆

本地回环IP:127.0.0.1   , 可用于测试网卡等设备是否正常工作

地址段最后一段为255的表示是广播地址,可以在该地址段发送广播消息

2、端口号

数据要发送到对方的指定应用程序上,通过虚拟端口数字标识(逻辑端口),范围0~65535,0~1024通常是系统预留

3、传输协议:

定义通讯的规则,这个规则称为协议

国际通用协议:TCP/IP

3、网络模型

OSI参考模型

物理层

数据链路层

网络层

传输层

会话层

表示层

应用层

(数据拆封包)

TCP/IP参考模型

主机至网络层(物理层、数据链路)

网际层(IP

传输层(UDPTCP)

应用层(会话、表示、应用)(HTTP)

4、操作类

InetAddress

方法

getLoalHost 获取本地主机地址

toString

getHostAddress 获取IP地址字符串

getHostName 获取主机名

InetAddress.getByName(主机名) 获取主机地址

getAllByName 获取主机地址数组

Socket

为网络服务提供的一种机制

通讯的两端都有Socket

数据在两个端口间进行IO传输


第二部分:UDP

1、DatagramSocket

方法

send(DatagramPacket) 发送数据包

receive(DatagramPacket) 将接收的数据封装在指定数据包中

2、DatagramPacket

构造

DatagramPacket(字节数组,数据长度,地址,端口)

方法

getData 返回数据

建立

(1)建立UDPSocket服务(接收端需要明确监听一个端口)

(2)提供数据,封装成数据包

(3)发送数据包

(4)关闭资源


第三部分:TCP

1、Socket

客户端端口

构造时就可以指定连接的主机和端口

方法

getInputStream 获取与端口关联的输入流

getOutputStream 获取关联的输出流

shutdownOutput 传输数据结束标识

2、ServerSocket

服务端对象

构造时指定监听的端口

构造时可以指定同时访问的客户端数量

获取客户端的流

方法

getInputStream 获取的流的源是网络数据

getOutputSteam

accept 接收一个客户端对象

getInetAddress.getHostAddress

并发传输数据

无限循环开启线程获取客户端传输


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值