Java 基于TCP的网络编程

本文介绍了Java中基于TCP协议的服务器和客户端程序设计,包括ServerSocket和Socket类的使用,以及如何通过多线程实现服务器与多个客户端的并发通信。通过示例展示了服务器启动、客户端连接以及消息收发的过程。

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

TCP协议的C/S程序

需要使用到两个类,来编写TCP协议的 CS 程序:

  1. ServerSocker 搭建服务器
  2. Socker 搭建客户端

在进行网络搭建,一定是先有服务器,然后我们再搭建客户端连接服务器。

下面对两个类进行介绍:

ServerSocker

用于创建服务器,创建完毕后,会绑定一个端口号;

然后此服务器就可以等待客户端的连接。

每连接一个客户端,服务器就会得到一个新的Socker对象,用于跟客户端进行通信。

常用构造方法:

ServerSocker(int port);

创建一个基于TCP/IP协议的服务器,并绑定指定的端口号。

注意:参数port的范围是:0-65535(前1024参数已经由客户端常用的软件绑定了)

常用方法:

Socket accept();
    等待客户端连接
    此方法会导致线程的阻塞
    直到一个新的客户端连接成功,return Socket对象后,线程再继续执行。
void close();
	开始四次挥手;
	释放占用的端口号,关闭服务器。

Socker

Socker称套接字,指计算机通信的端点,计算机与计算机之间通过套接字进行交流。

构造方法

Socket(String ip, int port)
    创建一个套接字,并连接指定ip和端口号的服务器。
    参数1. 服务器的ip地址
    参数2. 服务器软件的端口号

常用方法:

  • OutputStream getOutputStream( ); 想发消息就用Output发;
  • InputStream getInputStream( ) ; 想接收消息就用Input接;
  • void close( ); 不用了,就使用该方法关闭套接字;

注意的是:两方一定是一个在发,一个在接;服务器/客户端 先 输出/入,客户端/服务器 就先 输入/出。

举例

public class Demo {
   
    /**
     * TCP协议的网络编程
     * 服务器端
     */
    public static void main(String[] args) throws IOException {
   
        //搭建服务器
        ServerSocket server = new ServerSocket(55565<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值