java 简单的局域网聊天(带界面)Server

Java Swing 局域网的聊天--山寨QQ(增加了例子源码和mysql脚本) 这个是在没项目的时候,项目组长给我们布置的小任务,让我们更加熟悉下swing编程与网络编程。 本例子是基于C/S结构编写的,在局域网内有一个server,各个client通过配置服务器server和port去 连接到它。各个client之间的通信必须通过server来转发。 client不能直接操作数据库,必须向服务器发送请求,服务器操作数据之后,给client返回数据。 以下是山寨QQ 阅读详情

一个简单的局域网聊天,网络编程基础应用。服务器端。

 


import javax.swing.*;
import java.io.*;
import java.net.*;
import java.awt.event.*;

public class MyServer3 extends JFrame implements ActionListener {


    JTextArea jta = null;
    JTextField jtf = null;
    JPanel jp1 = null;
    JButton jb1 = null;
    JScrollPane jsp = null;

    //把信息发给客户端的对象
    PrintWriter pw = null;

    public static void main(String[] args) {
// TODO Auto-generated method stub
        MyServer3 ms3 = new MyServer3();
    }


    public MyServer3() {
        jta = new JTextArea();
        jsp = new JScrollPane(jta);
        jtf = new JTextField(20);
        jb1 = new JButton("发送");
        jb1.addActionListener(this);

        jp1 = new JPanel();
        jp1.add(jtf);
        jp1.add(jb1);
        this.add(jsp, "Center");
        this.add(jp1, "South");

        this.setSize(400, 300);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setTitle("服务器");

        try {
            //服务器监听
            ServerSocket ss = new ServerSocket(9999);
            this.jta.setText("服务器启动\r\n");
            //等待客户端链接
            Socket s = ss.accept();
            this.jta.append("客户端已连接!\r\n");

            InputStreamReader isr = new InputStreamReader(s.getInputStream());
            BufferedReader br = new BufferedReader(isr);

            pw = new PrintWriter(s.getOutputStream(), true);
            //读取从客户端发送的消息
            while (true) {
                String info = br.readLine();
                jta.append("————————客户端————————\r\n" + info + "\r\n");
            }

        } catch (Exception e) {
// TODO: handle exception
            e.printStackTrace();
        }
    }

    public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
        if (e.getSource() == jb1) {
//把服务器在jtf中的信息发送给客户端
            String info = jtf.getText();
            jta.append("————————服务器————————\r\n" + info + "\r\n");
            pw.println(":" + info);
//清空发送框
            jtf.setText("");
        }
    }
}
JAVA —— 局域网内通信系统项目 本文介绍了基于Socket和Thread技术实现的局域网聊天室系统。该系统包含客户端和服务器端两部分:客户端使用Java Swing构建UI界面,包括登录窗口和聊天室窗口,通过Socket与服务器建立连接;服务器端维护在线用户列表(Map<Socket,String>),处理登录、群聊消息转发和在线列表更新功能。关键实现包括:1)客户端通过DataOutputStream发送消息类型(1-登录/2-群聊);2)服务器使用多线程处理客户端连接,实时更新和广播在线用户列表;3)群聊消息格式化处理,包 阅读详情

相关推荐

用java写的多线程聊天程序GUI界面socket实现

用java写的多线程聊天程序GUI界面socket实现,java源代码,大家可以看一下,好了就顶,不好可以批评

用python模拟多人聊天服务器以及客户端(带图形化界面)

所用python的知识点:网络编程:socket多线程:threading图形化编程:tkinter首先要模拟出一个服务器,以供客户端连接,注意这里的要用死循环,要让服务区一直处于开放的状态其次要运用多线程,因为多线程共享变量而且可以同时并发的执行操作,否则服务器就只可以连接一个客户端下面先附上代码后在解释其怎么操作:第一个py文件--服务器import tkinter import socket...

qq_41682681的博客 2万+

java实现聊天室功能(全部代码,有界面)

java写的聊天室程序,支持群聊,公聊,私聊,支持刷新好友列表,使用swing以及awt写的简单界面,可以多人登录

聊天室软件(服务器+图形界面客户端)

→Github地址←

Umichan0621的博客 1632

计算机网络课设(利用UDP实现聊天系统 java实现 内含报告文档)

计算机网络课设 利用UDP实现聊天系统 java实现 内含报告文档 仅供参考

JAVA仿QQ聊天

用于实现qq聊天的基本功能,里面还包含了数据库,用的时候导入就可以了

网络通信基础总结3——一个简单的有界面的群聊服务器和客户端

 在我的上一篇总结中,我初步完成了一个多线程的服务器,可是还有很多问题有待解决。比如,如何使两台客户机之间可以实现通信?这就需要我们增加一个通信类和通信方法来实现服务器接收到一条消息以后将它转发给另一个线程代表的客户机。当然要实现一个功能相对健全的群聊通信工具远没有那么简单。那么这篇日记中我将一一总结。         首先让我来谈谈群聊服务器的实现。我希望实现的功能大...

phoenix610的博客 397

java多线程+Socket+Swing局域网聊天软件(客户端源码)

java多线程+Socket+Swing局域网聊天软件(客户端源码) 这是客户端源码,有11MB,因为有很多小图片。 上次忘了传源码,不好意思。

网络聊天室Java基础版(Socket_Swing编程)仿QQ聊天

     本课程为JavaSE基础阶段的项目实战视频,主要使用技术均为JavaSE基础,手把手带你构建在线聊天室,需要JavaSE基础才能进行实战与开发,学习前需要掌握的技能有:逻辑基础、面向对象、异常处理、集合框架、IO流、网络编程、多线程、GUI技术,学完本套课程,你会对JavaSE有一个更深入的认知,为后续课程的学习打下一个坚实的基础。 课程大纲 1. 网络聊天室认知及原理; 2. 登录、聊天室、服务端界面制作; 3. 客户端/服务端网络通信实现; 4. 通信机制设计; 5. 在线统计、消息收发主功能实现; 6. 服务端主功能实现; 7. 字体及图片样式发送;

Java实现的联机多人对战五子棋游戏,带聊天功能

Java实现的联机多人对战五子棋游戏,带聊天功能,可开多队同时对战

告别虚拟机!用ZYNQ7000和PYNQ 2.6.0打造一个能实时识别人脸的“智能摄像头”

本文详细介绍了如何利用Xilinx ZYNQ7000开发板和PYNQ 2.6.0框架构建实时人脸识别系统。通过硬件加速和嵌入式开发技术,该系统实现了低延迟、低功耗的独立运行能力,适用于边缘计算和物联网应用。文章包含从环境搭建到核心功能实现的完整指南,并提供了性能优化和问题排查的实用技巧。

weixin_42543046的博客 391

JAVA实现聊天室(局域网)

JAVA用局域网实现聊天室 类和接口 Server类(服务器端) package Test; import java.io.IOException; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class Server { private static final int SERVER_PORT=30000; //使用CrazyitMap对象来保存每

weixin_45821324的博客 3197

手把手教你在全新服务器内网安装OpenEuler 22.03 LTS SP4+ 安装 openGuass 5.0.0(LTS) 数据库

openEuler是面向数字基础设施的操作系统,支持服务器、云计算、边缘计算、嵌入式等应用场景,支持多样性计算,致力于提供安全、稳定、易用的开源服务器Linux操作系统。

cgqyw的专栏 3738

java局域网聊天代码_简单的局域网聊天程序(java版本的)

局域网聊天程序,首先我已经默认你的电脑已经配置好的java开发的一些环境,所需代码有两个java的源代码,他们分别是1:Server_Test.java-------2:Socket_Test.java好了废话不多说了,直接上源码1:Server_Test.java 服务器端的代码import java.io.*;import java.net.*;import java.app...

weixin_39628343的博客 703

ICESat-2数据下载及处理分析随笔

ICESat-2全称是Ice,Cloud and land Elevation Satellite -2。看名字我们能知道它的任务是测ice,cloud和land elevation,而且这是一个Satellite,是一颗卫星。那么这里我们就要分清ICESat-2和ATLAS的关系,ICESat-2是星载平台,是一个space observatory,ATLAS是这个星载平台上搭载的单光子激光雷达系统。

u011322358的博客 1万+

Linux内核同步原语之队列自旋锁(Queued Spin Lock)深度解析

本文深度解析了Linux内核中的队列自旋锁(Queued Spin Lock)机制。通过对比传统自旋锁的瓶颈,详细阐述了队列自旋锁如何利用紧凑的4字节结构、每CPU节点数组和pending位优化,有效解决多核(SMP)系统中的缓存行乒乓和惊群效应,实现公平、高效的锁等待队列,从而显著提升内核在高并发场景下的可扩展性与性能。

weixin_29205061的博客 305

简易局域网聊天java_简单的局域网聊天程序(java版本的)

局域网聊天程序,首先我已经默认你的电脑已经配置好的java开发的一些环境,所需代码有两个java的源代码,他们分别是1:Server_Test.java-------2:Socket_Test.java好了废话不多说了,直接上源码1:Server_Test.java 服务器端的代码import java.io.*;import java.net.*;import java.app...

bobo的博客 695

十年芯片资深IC设计工程师面经系列(四)SDC约束

set_driving_cell:当我们的设计是模块级(Block level)的design时,我们的设计前面一般还有其他的设计,那么前面模块的输出便是我们模块的输入,5.1set_false_path:可以单独的时钟或者路径进行约束。set drive :当我们的设计是芯片级(Chip level)的顶层设计时,芯片外围电路要驱动的是负载较大的IO单元,故需要的驱动能力较强,:set_load 是指output端口的负载,设置的值会影响输出到端口的net上的电容,从而影响相应的路径延时。

weixin_47349046的博客 1773

简单的局域网聊天程序(java版本的)

           局域网聊天程序,首先我已经默认你的电脑已经配置好的java开发的一些环境,所需代码有两个java的源代码,他们分别是1:Server_Test.java-------2:Socket_Test.java 好了废话不多说了,直接上源码   1:Server_Test.java          服务器端的代码   import java.io.*; import ja...

程序员Android 2302

【推荐100个unity插件】基于节点的程序化无限地图生成器 —— MapMagic 2

MapMagic 2是一款基于节点的程序化地形生成工具,可快速创建无限地图。主要功能包括:通过图形化节点编辑器构建地形逻辑;支持四个核心模块(对象、样条线、生物群落和笔刷);提供完整的操作指南,包括创建资产、使用编辑器窗口、节点操作等。工具具有直观的UI界面,支持节点连接、参数调整、图层管理等功能,并能实时生成地形。适合游戏开发者快速构建高质量的可玩地形环境。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 3123

Pytest教程:Pytest插件原理

Pytest的插件系统是其强大功能的核心,它允许用户和开发者扩展和定制测试框架的行为。要深入理解Pytest插件的原理,我们需要从Pytest的架构和设计模式开始,然后深入到底层源码。

旦莫的博客 637

基于Socket编程的局域网聊天室开发笔记

客户端点击connect按钮后,会根据用户所填的IP地址以及端口号与服务器进行连接,并发送自己的昵称给服务器,这里用的是直接写入输出流。如果客户端要发送信息给服务器,点击send按钮,是调用的send函数,将相关数据以一定长度为单位写入输出流发送给服务端。同时服务端接受数据,把数据再转发给所有与之相连的客户端,在发送消息的客户端视角,我们要清空刚才输入数据的聊天框,并在聊天记录框中展示,由服务器转发而来的自己接收了的聊天信息。若是服务器发送过来信息,我们要及时接收,所以就设置了监听程序。

HumanAwake的博客 1857

大学计算 - NumPy库的矩阵运算 实训答案

本文介绍了三个NumPy矩阵操作的实验练习。第一关练习ndarray类型操作,包括矩阵构造、元素平方和计算、矩阵乘积运算和逆矩阵行列式计算;第二关针对matrix类型,涉及绝对值最大值获取、特定矩阵乘积运算和转置矩阵特征值计算;第三关实现Moore-Penrose伪逆矩阵计算,并与NumPy内置pinv函数结果比较误差。实验涵盖了NumPy核心矩阵操作,展示了从基础运算到高级矩阵分解的应用,帮助掌握科学计算中的矩阵处理技巧。

2403_89314916的博客 311

如何使用Java语言在Idea和Android中分别建立服务端和客户端实现局域网聊天

在我制作的时候,在写方法这里就遇到了问题,总的来说,就是匿名类内部调用方法,默认调用的是匿名类内部的方法,而不调用外部方法.但是我们一般定义类都在外部定义而不会在匿名类内部定义,所以就有找不到调用类的错误(下面有例子))的,因为Android怕这些耗时操作堵塞主线程,影响用户体验,这里的收发消息和获取用户名都是需要网络的,也就是耗时操作,都需要新开线程来进行。“我匿名类可是天朝上国,还需要你的方法?而这个方法呢就像世界的先进技术,别人已经研究好的,拿来就能用,可悲的是他非要用自己的,那怎么办?

众智创新团队的博客 1203

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Java之简单的聊天工具

今天整理资料的时候,找出自己几年前刚学Java时做过的一个简易的聊天工具,有服务器也有客户端,能发送文字消息和文件,但是用户上线并未存入数据库,而只是简单的缓存在服务器的一个数组中,所以,只要服务器一关闭,所有用户数据都会消失,界面是用第三方包,很简单,有点丑陋,不喜勿喷。 源码地址:http://download.youkuaiyun.com/detail/weidi1989/5810475 (GB23

way 8671

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

图像预处理核心:resize与padding的选择逻辑与实战决策

图像resize和padding是计算机视觉任务中基础却关键的预处理操作,本质涉及空间几何变换与语义保真之间的权衡。resize通过插值重采样实现尺寸归一化,但会引发宽高比畸变、高频信息衰减及下游任务坐标偏移;padding则通过可控留白维持原始比例,对目标检测、关键点定位等空间敏感任务更具鲁棒性。其技术价值在于保障模型输入的空间一致性,直接影响mAP、IoU等核心指标。典型应用场景包括工业质检(需保留螺纹细节)、移动端人脸检测(要求五官比例不变)、自动驾驶(依赖光流连续性)等。本文深入剖析二者在频域响应、

weixin_34236869的博客 488

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: Liunx 学习之旅!
下一篇: java 简单的局域网聊天(带界面)Client
凝丶逝
博客等级 码龄11年 4粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值