Java网络编程之简易聊天室的实现

 更新时间:2022年10月17日 08:36:46   作者:小虚竹and掘金  
这篇文章主要为大家详细介绍了如何利用Java语言实现一个简易聊天室功能,可以实现运行客户端和连接服务器,文中的示例代码讲解详细,需要的可以了解一下

一、题目描述

题目实现:运行客户端,连接服务器。

二、解题思路

首先需要启动上题的ServerSocketFrame服务,这样客户端运行时,才能连接上服务器。

创建一个类:ClientSocketFrame,继承JFrame

通过Socket类创建到指定服务器和端口的套接字对象。

实例化Socket对象

 socket = new Socket("127.0.0.1", 9527); // 127.0.0.1 代表的是本地IP

三、代码详解

ClientSocketFrame

package com.xiaoxuzhu;
import java.awt.BorderLayout;
import java.net.*;
import javax.swing.*;
import javax.swing.JScrollPane;

/**
 * Description: 
 *
 * @author xiaoxuzhu
 * @version 1.0
 *
 * <pre>
 * 修改记录:
 * 修改后版本	        修改人		修改日期			修改内容
 * 2022/5/29.1	    xiaoxuzhu		2022/5/29		    Create
 * </pre>
 * @date 2022/5/29
 */

public class ClientSocketFrame extends JFrame { // 创建类继承JFrame类
    private Socket socket; // 声明Socket对象
    private JTextArea ta_info = new JTextArea(); // 创建JtextArea对象

    public ClientSocketFrame() { // 构造方法
        super(); // 调用父类的构造方法
        setTitle("建立客户端套接字");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 254, 166);
        final JScrollPane scrollPane = new JScrollPane();
        getContentPane().add(scrollPane, BorderLayout.CENTER);
        scrollPane.setViewportView(ta_info);
    }

    private void connect() { // 连接套接字方法
        ta_info.append("尝试连接......\n"); // 文本域中信息信息
        try { // 捕捉异常
            socket = new Socket("127.0.0.1", 9527); // 实例化Socket对象
            ta_info.append("完成连接。\n"); // 文本域中提示信息
        } catch (Exception e) {
            e.printStackTrace(); // 输出异常信息
        }
    }

    public static void main(String[] args) { // 主方法
        ClientSocketFrame clien = new ClientSocketFrame(); // 创建本例对象
        clien.setVisible(true); // 将窗体显示
        clien.connect(); // 调用连接方法
    }
}

服务端等待连接

启动客户端

查看服务端的状态显示

到此这篇关于Java网络编程之简易聊天室的实现的文章就介绍到这了,更多相关Java聊天室内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在idea中利用maven实现多环境配置自动打包的流程步骤

    在idea中利用maven实现多环境配置自动打包的流程步骤

    这篇文章主要介绍了在idea中利用maven实现多环境配置自动打包的流程步骤,文中通过图文和代码示例介绍的非常详细,对大家的学习或工作有一定帮助,需要的朋友可以参考下
    2024-11-11
  • SpringBoot打印系统执行的sql语句及日志配置指南

    SpringBoot打印系统执行的sql语句及日志配置指南

    这篇文章主要给大家介绍了关于SpringBoot打印系统执行的sql语句及日志配置的相关资料,在Java SpringBoot项目中如果使用了Mybatis框架,默认情况下执行的所有SQL操作都不会打印日志,需要的朋友可以参考下
    2023-10-10
  • spring boot整合mybatis利用Mysql实现主键UUID的方法

    spring boot整合mybatis利用Mysql实现主键UUID的方法

    这篇文章主要给大家介绍了关于spring boot整合mybatis利用Mysql实现主键UUID的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • IDEA 中创建并部署 JavaWeb 程序的方法步骤(图文)

    IDEA 中创建并部署 JavaWeb 程序的方法步骤(图文)

    本文主要介绍了IDEA 中创建并部署 JavaWeb 程序的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 图解Java排序算法之归并排序

    图解Java排序算法之归并排序

    这篇文章主要为大家详细介绍了Java经典排序算法之归并排序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • 详解spring自动扫描包

    详解spring自动扫描包

    这篇文章主要介绍了spring自动扫描包的相关知识,本文通过实例相结合的形式给大家介绍的非常详细,感兴趣的朋友跟随脚本之家小编一起看看吧
    2018-06-06
  • java控制台实现拼图游戏

    java控制台实现拼图游戏

    这篇文章主要为大家详细介绍了java控制台实现拼图游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • Spring Cloud超详细i讲解Feign自定义配置与使用

    Spring Cloud超详细i讲解Feign自定义配置与使用

    这篇文章主要介绍了SpringCloud Feign自定义配置与使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • Java如何生成带网站链接(URL)的二维码

    Java如何生成带网站链接(URL)的二维码

    自从微信扫描出世,二维码扫描逐渐已经成为一种主流的信息传递和交换方式,这篇文章主要给大家介绍了关于Java如何生成带网站链接(URL)的二维码的相关资料,文中通过图文实例代码介绍的非常详细,需要的朋友可以参考下
    2021-07-07
  • 高分面试从Hotspot源码层面剖析java多态实现原理

    高分面试从Hotspot源码层面剖析java多态实现原理

    这篇文章主要为大家介绍了在面试中从Hotspot源码层面来剖析java多态的实现原理,这样回答薪资随你开,有需要的朋友可以借鉴参考下,希望大家多多加薪
    2022-01-01

最新评论