当前位置 : 主页 > 编程语言 > java >

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

来源:互联网 收集:自由互联 发布时间:2023-01-30
目录 一、题目描述 二、解题思路 三、代码详解 一、题目描述 题目实现:运行客户端,连接服务器。 二、解题思路 首先需要启动上题的ServerSocketFrame服务,这样客户端运行时,才能连
目录
  • 一、题目描述
  • 二、解题思路
  • 三、代码详解

一、题目描述

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

二、解题思路

首先需要启动上题的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聊天室内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

网友评论