网络编程指的是编写跨多个设备(计算机)执行的程序,设备使用网络彼此连接。
J2SE API的包中包含一组类和接口,它们提供低级别的通信详细信息,开发者可编写专注于解决手头问题的程序。
包提供对两种常见网络协议的支持 -
- TCP - TCP代表传输控制协议,它允许两个应用程序之间的可靠通信。TCP通常用于Internet协议,称为。
- UDP - UDP代表用户数据报协议,这是一种无连接协议,允许在应用程序之间传输数据包。
本章为这两个协议准备了两个示例,以便可以更好的理解 -
- 套接字编程 - 它是网络中使用最广泛的概念,在本节中将进行非常详细的解释。
- URL处理 - 它将在单独一节中详细介绍。单击此处以了解Java语言中的URL处理。
套接字是使用TCP提供通信机制在两台计算机之间进行通信。客户端程序在通信的末尾创建一个套接字,并尝试将套接字连接到服务器。
建立连接后,服务器会在通信结束时创建一个套接字对象。客户端和服务器现在可以通过写入和读取套接字进行通信。
类表示一个套接字,类为服务器程序提供了一种监听客户端并与它们建立连接的机制。
使用套接字在两台计算机之间建立TCP连接时,会发生以下步骤 -
- 服务器实例化对象,表示要在哪个端口号上进行通信。
- 服务器调用S类的方法。此方法等待,直到客户端连接到给定端口上的服务器。
- 在服务器等待之后,客户端实例化对象,指定要连接的服务器名称(IP地址)和端口号。
- 类的构造函数尝试将客户端连接到指定的服务器和端口号。如果建立了通信,则客户端现在具有能够与服务器通信的对象。
- 在服务器端,方法返回对连接到客户端套接字的服务器上的新套接字的引用。
建立连接后,可以使用I/O流进行通信。每个套接字都有一个和一个。客户端的连接到服务器的,客户端的连接到服务器的。
TCP是双向通信协议,因此可以同时跨两个流发送数据。以下是套接字实现类的方法 -
服务器应用程序使用类来获取端口并侦听客户端请求。
类有四个构造函数 -
如果构造函数没有抛出异常,则表示应用程序已成功绑定到指定的端口并准备好进行客户端请求。
以下是类的一些常用方法 -
当调用时,在客户端连接之前不会返回。客户端连接后,在未指定的端口上创建一个新的,并返回对此新的引用。客户端和服务器之间现在存在TCP连接,并且可以开始通信。
类表示客户端和服务器用于相互通信的套接字。客户端通过实例化一个来获取对象,而服务器从方法的返回值获取对象。
类有五个构造函数,客户端用它们连接到服务器 -
类表示Internet协议(IP)地址。以下是执行套接字编程时需要的一些重要方法 -
套接字客户端示例
以下代码是一个客户端程序,它通过使用套接字连接到服务器并发送问候语,然后等待响应。
套接字服务器示例
以下程序是服务器应用程序的示例,该应用程序使用类来侦听由命令行参数指定的端口号上的客户端 -
编译客户端和服务器,然后按如下方式首先启动服务器 -
接下来运行客户端程序 -
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/9114.html