Java学习笔记——网络编程

一、网络基础知识

1、两台计算机之间的通行需要有相同的协议(TCP/IP协议),相同的端口号,各自唯一标识的IP地址。【端口号范围:0~65535,其中0~1023为系统所保留】

2、IP地址和端口号组成了所谓的Socket,Socket是网络上运行的程序之间双向通信链路的终结点,是TCP和UDP的基础。

3、两台计算机相互通信需要知道两台计算机的IP地址和端口号。

4、常用的协议端口号。(超文件传输协议)http:80    (文件传输协议)ftp:21    (远程登录协议)telnet:23

二、InetAddress类

InetAddress类不用通过new获取实例,直接用getLocalHost()方法获得返回地址InetAddress的实例。

三、URL——资源的地址

四、TCP编程

1、TCP编程Socket通信原理


2、实现步骤:

2.1、创建ServerSocket/Socket;

2.2、获取Socket连接的输入/输出流;

2.3、对Socket中的输入输出流进行读/写操作;

2.4、关闭输入输出流、关闭Socket;

代码:

 多线程TCPServer类:

Server线程类:


TCPClien类:


五、UDP编程

1、主要的类:

DatagramPacket 和 DatagramSocket这两个类

2、服务端编写步骤:

2.1、建立DatagramSocket

2.2、创建DatagramPacket用来接收服务端发送来的信息

2.3、接收信息

2.4、读取信息


3、客户端编写步骤:

3.1、获取服务端的IP地址和端口号

3.2、创建DatagramPacket用来放需要发送的数据信息

3.3、建立DatagramSocket

3.4、发送信息

代码:

多线程UDPServer类:

Server线程类:

UDPClient类:


需要注意:在TCP编程中,服务器和客户端建立连接传输数据时,每次通过流传输完数据时需要用Socket的shutdownOutput()/shutdownInput()的方法关闭输出输入流。


猜你喜欢

转载自blog.csdn.net/weixin_41072833/article/details/79610184