Java聊天室之实现运行服务器与等待客户端连接

下面是详细的讲解。

一、实现运行服务器

  1. 开启一个Java项目,在项目中创建一个ServerSocket对象,指定监听的端口号。这里以6666为例:
// 创建ServerSocket对象
ServerSocket serverSocket = new ServerSocket(6666);
  1. 使用accept()方法等待客户端连接。该方法会一直阻塞,直到有客户端连接,然后返回一个表示已连接的Socket对象。
// 使用accept()方法等待客户端连接,返回已连接的Socket对象
Socket socket = serverSocket.accept();
  1. 在连接成功后,可以通过获得的Socket对象获取到该客户端的IP地址和端口号,并在控制台打印出来作为提示。
// 获取客户端的IP地址和端口号
String ip = socket.getInetAddress().getHostAddress();
int port = socket.getPort();

// 打印出连接信息
System.out.println("客户端" + ip + ":" + port + "已连接");

二、等待客户端连接

  1. 创建一个客户端程序,在该程序中创建一个Socket对象,并指定服务器的IP地址和端口号,这里以本地IP和6666端口为例:
// 创建Socket对象,指定服务器的IP地址和端口号
Socket socket = new Socket("127.0.0.1", 6666);
  1. 在成功连接服务器后,可以通过获取到的Socket对象获得服务器的IP地址和端口号,并在控制台打印出来作为提示。
// 获取服务器的IP地址和端口号
String ip = socket.getInetAddress().getHostAddress();
int port = socket.getPort();

// 打印出连接信息
System.out.println("已连接服务器" + ip + ":" + port);

示例说明一

下面是一个实现运行服务器的完整示例:

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {
    public static void main(String[] args) throws IOException {
        // 创建ServerSocket对象
        ServerSocket serverSocket = new ServerSocket(6666);
        System.out.println("服务器已启动,等待客户端连接");

        // 使用accept()方法等待客户端连接
        Socket socket = serverSocket.accept();

        // 获取客户端的IP地址和端口号
        String ip = socket.getInetAddress().getHostAddress();
        int port = socket.getPort();

        // 打印出连接信息
        System.out.println("客户端" + ip + ":" + port + "已连接");

        // 关闭服务器Socket
        serverSocket.close();
    }
}

在该示例中,开启了一个端口为6666的ServerSocket对象,并使用accept()方法等待客户端连接。当有客户端连接成功时,获取到客户端的IP地址和端口号,并打印出提示信息。最后关闭了服务器Socket。

示例说明二

下面是一个等待客户端连接的完整示例:

import java.io.IOException;
import java.net.Socket;

public class Client {
    public static void main(String[] args) throws IOException {
        // 创建Socket对象,指定服务器的IP地址和端口号
        Socket socket = new Socket("127.0.0.1", 6666);
        System.out.println("已连接服务器");

        // 获取服务器的IP地址和端口号
        String ip = socket.getInetAddress().getHostAddress();
        int port = socket.getPort();

        // 打印出连接信息
        System.out.println("服务器" + ip + ":" + port + "已连接");

        // 关闭客户端Socket
        socket.close();
    }
}

在该示例中,创建了一个Socket对象,并指定了服务器的IP地址和端口号。在连接成功后,获取到服务器的IP地址和端口号,并打印出提示信息。最后关闭了客户端Socket。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java聊天室之实现运行服务器与等待客户端连接 - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • 微信开发者工具如何修改模拟器位置 微信开发者工具修改模拟器位置教程

    微信开发者工具如何修改模拟器位置 微信开发者工具提供了模拟器的功能,可以在开发过程中方便地预览和调试小程序。有时候我们需要修改模拟器的位置,以适应不同的预览场景。本文将详细讲解如何修改微信开发者工具中模拟器的位置。 步骤 步骤1:进入开发者工具 首先,我们需要进入微信开发者工具,并打开自己的小程序项目。 步骤2:打开模拟器 在开发者工具的顶部菜单栏中,可以找…

    other 2023年6月26日
    00
  • 微信小程序 绘图之饼图实现

    { name: ‘数据1’, value: 30 }, { name: ‘数据2’, value: 50 }, { name: ‘数据3’, value: 20 } ] }] }; chart.setOption(option); }})“` 4. 示例说明 下面我们通过两个示例来说明如何使用wx-charts库绘制饼图。 示例一:简单饼图 假设我们要绘制…

    other 2023年8月23日
    00
  • Navicat 连接服务器端中的docker数据库的方法

    下面是详细的攻略。 准备工作 首先需要下载安装 Navicat,然后在需要连接的服务器端安装和运行 Docker。 连接 Docker 数据库 打开 Navicat,点击菜单栏的“连接”按钮,选择“MySQL”作为连接类型,输入服务器的地址、端口号、用户名和密码,点击“连接”按钮。如果连接成功,会显示“连接成功”。 在连接成功的界面中,点击“连接”按钮旁边的…

    other 2023年6月27日
    00
  • SQL存储过程+游标 循环批量()操作数据

    SQL存储过程+游标 循环批量()操作数据的完整攻略 在SQL中,存储过程和游标是常用的操作数据的方式。当需要对大量数据进行批量操作时,可以使用存储过程和游标来实现。本文将为您提供一份SQL存储过程+游标 循环批量()操作数据的完整攻略,包括两个示例说明。 创建存储过程 在使用存储过程和游标之前,需要先创建存储过程。可以按照以下步骤创建存储过程: 打开SQL…

    other 2023年5月5日
    00
  • 分离与继承的思想实现图片上传后的预览功能:ImageUploadView

    “分离与继承的思想实现图片上传后的预览功能:ImageUploadView”是一种实现图片上传并预览的常用方法,下面将详细讲解如何实现这种功能。 步骤1:创建基类 首先,需要创建一个名为BaseImageUploadView的基类,用于实现图片上传功能。这个基类可以包含一些公共方法和属性,用来处理图片上传的逻辑,比如上传图片的最大大小和格式等。 from d…

    other 2023年6月26日
    00
  • python变量的作用域是什么

    Python变量的作用域 在Python中,变量的作用域指的是变量在程序中可访问的范围。Python中有四种不同的作用域:全局作用域、局部作用域、嵌套作用域和内置作用域。在理解这些作用域之前,我们先来看两个示例。 示例一:全局作用域 全局作用域是在整个程序中都可访问的作用域。在全局作用域中定义的变量可以在程序的任何地方使用。 x = 10 # 全局变量 de…

    other 2023年7月29日
    00
  • Win10系统设置固定IP地址的方法

    Win10系统设置固定IP地址的方法攻略 在Windows 10系统中,你可以通过以下步骤来设置固定IP地址: 打开“控制面板”: 点击任务栏左下角的Windows图标。 在弹出的菜单中,选择“控制面板”。 进入“网络和Internet”设置: 在控制面板中,找到并点击“网络和Internet”选项。 打开“网络和共享中心”: 在“网络和Internet”设…

    other 2023年7月30日
    00
  • php限制ip地址范围的方法

    当使用PHP编写Web应用程序时,有时需要限制特定IP地址范围的访问。下面是一种常见的方法来实现这个目标: 获取访问者的IP地址:首先,我们需要获取访问者的IP地址。在PHP中,可以使用$_SERVER[‘REMOTE_ADDR’]来获取访问者的IP地址。这个变量包含了当前请求的客户端IP地址。 检查IP地址范围:接下来,我们需要检查访问者的IP地址是否在允…

    other 2023年7月31日
    00
合作推广
合作推广
分享本页
返回顶部