Java网络编程之TCP协议

本文介绍TCP协议的基本概念,包括其作为面向连接的协议特性。详细解释了如何使用Java API中的java.net包来实现服务器端和客户端的套接字编程,涵盖ServerSocket和Socket类的使用方法及示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.TCP是一个面向连接的协议。

 实现TCP程序,需要编写服务端和客户端,java API为我们提供了java.net包,为实现网络应用程序提供类。

ServerSocket,此类实现服务器套接字。

Socket, 此类实现客户端套接字(套接字)。

Socket是网络驱动层提供给应用程序编程的接口和一种机制。

2.数据接收过程:

3.实现服务器端与客户端程序:

1.服务器:

ServerSocket 此类实现服务器套接字。服务器套接字等待请求通过网络传入,它基于该请求执行某些操作,然后可能向请求者返回结果。

ServerSocket(int port) 创建绑定到特定端口的服务器套接字。

 setSoTimeout(int timeout) 通过指定超时值启用/禁用SO_TIMEOUT(以毫秒为单位)

InetAddress getInetAddress() 返回此服务器套接字的本地地址

Socket accept() 倾听并接受到此套接字的连接

 2.客户端:

Socket 此类实现客户端套接字(套接字)。套接字是两台机器间通信的端点。

Socket(String host, int port) 创建一个流套接字并将其连接到指定主机上的指定端口号

InputStream getInputStream() 返回此套接字的输入流

void setSoTimeout(int timeout) 启用/禁用带有超时值的SO_TIMEOUT(以毫秒为单位)

事例:

Echo,意为应答。程序的功能是客户端向服务器发送一个字符串,服务器不做任何处理,直接把字符串返回给客户端,Echo是最基本的客户端/服务器程序。

目的:测试网络互通

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值