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

 更新时间:2022年10月18日 13:59:59   作者:小虚竹and掘金  
这篇文章主要为大家详细介绍了Java简易聊天室之实现运行服务器程序与等待客户端程序连接功能,文中的示例代码讲解详细,需要的可以了解一下

一、题目描述

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

二、解题思路

首先需要在服务器中建立服务器套接字,并等待客户程序的连接。

创建一个类:ServerSocketFrame,继承JFrame

通过ServerSocket类创建绑定到指定端口的服务器套接字对象。然后调用ServerSocket类的accept()方法监听客户端的连接。

实例化Socket对象

server = new ServerSocket(9527); // 可指定端口

三、代码详解

ServerSocketFrame

package com.xiaoxuzhu;

import java.awt.BorderLayout;
import java.net.*;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
/**
 * Description: 服务器中建立服务器套接字,并等待客户程序的连接。
 *
 * @author xiaoxuzhu
 * @version 1.0
 *
 * <pre>
 * 修改记录:
 * 修改后版本	        修改人		修改日期			修改内容
 * 2022/5/29.1	    xiaoxuzhu		2022/5/29		    Create
 * </pre>
 * @date 2022/5/29
 */
public class ServerSocketFrame extends JFrame {
    private JTextArea ta_info;
    private ServerSocket server; // 声明ServerSocket对象
    private Socket socket; // 声明Socket对象socket

    public void getServer() {
        try {
            server = new ServerSocket(9527); // 实例化Socket对象
            ta_info.append("服务器套接字已经创建成功\n"); // 输出信息
            while (true) { // 如果套接字是连接状态
                ta_info.append("等待客户机的连接......\n"); // 输出信息
                socket = server.accept(); // 监听客户端连接
                ta_info.append("连接成功......\n");//有客户端连接上,才算监听成功,会输入这一段
            }
        } catch (Exception e) {
            e.printStackTrace(); // 输出异常信息
        }
    }

    public static void main(String[] args) { // 主方法
        ServerSocketFrame frame = new ServerSocketFrame(); // 创建本类对象
        frame.setVisible(true);
        frame.getServer(); // 调用方法
    }

    public ServerSocketFrame() {
        super();
        setTitle("建立服务器套接字");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 260, 167);

        final JScrollPane scrollPane = new JScrollPane();
        getContentPane().add(scrollPane, BorderLayout.CENTER);

        ta_info = new JTextArea();
        scrollPane.setViewportView(ta_info);
    }
}

实现效果

到此这篇关于Java聊天室之实现运行服务器与等待客户端连接的文章就介绍到这了,更多相关Java聊天室内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 聊聊spring @Transactional 事务无法使用的可能原因

    聊聊spring @Transactional 事务无法使用的可能原因

    这篇文章主要介绍了spring @Transactional 事务无法使用的可能原因,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java数据结构之栈的详解

    Java数据结构之栈的详解

    这篇文章主要介绍了Java数据结构之栈简单操作的相关资料,需要的朋友可以参考下,希望能够给你带来帮助
    2021-09-09
  • SpringMVC中使用@PathVariable绑定路由中的数组的方法

    SpringMVC中使用@PathVariable绑定路由中的数组的方法

    这篇文章主要介绍了SpringMVC中使用@PathVariable绑定路由中的数组的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Java开发必备的三大修饰符

    Java开发必备的三大修饰符

    JAVA的三个修饰:static,final,abstract,在JAVA语言里无处不在,但是它们都能修饰什么组件,修饰组件的含义又有什么限制,总是混淆.所以来总结一下,需要的朋友可以参考下
    2021-06-06
  • java制作简单的坦克大战

    java制作简单的坦克大战

    坦克大战是我们小时候玩红白机时代的经典游戏,看到有不少小伙伴都使用各种语言实现了一下,手痒痒,也使用java做的一个比较简单的坦克大战,主要面向于学过Java的人群,与学了一段时间的人,有利于面向对象思想的提高,推荐给大家。
    2015-03-03
  • springboot实现在工具类(util)中调用注入service层方法

    springboot实现在工具类(util)中调用注入service层方法

    这篇文章主要介绍了springboot实现在工具类(util)中调用注入service层方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java在线打开word文档并强制留痕的方法

    Java在线打开word文档并强制留痕的方法

    在本篇文章里小编给读者们分享的是关于Java在线打开word文档并强制留痕的方法,对此有需要的朋友们可以学习下。
    2020-01-01
  • 学习java编程后可以走哪些职业道路

    学习java编程后可以走哪些职业道路

    在本篇文章里给大家介绍了关于学习java后的职业道路,以及需要学习的相关知识内容,有兴趣的朋友们可以跟着学习下。
    2022-11-11
  • java如何根据IP获取当前区域天气信息详解

    java如何根据IP获取当前区域天气信息详解

    根据IP自动获取当地的天气预报信息这个功能大家应该都遇到过,天气预报信息用途非常广泛,篇文章主要给大家介绍了关于java如何根据IP获取当前区域天气信息的相关资料,需要的朋友可以参考下
    2021-08-08
  • Spring Security 实现短信验证码登录功能

    Spring Security 实现短信验证码登录功能

    这篇文章主要介绍了Spring Security 实现短信验证码登录功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05

最新评论