前言
可以学习到java网络编程的知识,也可以拿去当个模板去添加功能
项目展示:
chatv1.0
服务器打包视频:
服务器打包exe
1. 项目概述
本项目旨在开发一个简单的群聊室应用程序,使用JavaFX作为用户界面框架,以及Java Socket编程实现网络通信。(局域网内可以不同的电脑互相通讯,作者已经成功验证了,如果需要不局限于局域网,加上服务器的操作,请关注,等待作者的2.0版本)
2. 功能需求
-
用户可以通过图形界面输入用户名和服务器地址。
-
用户可以连接到服务器并加入聊天室。
-
用户可以发送消息到聊天室,所有连接的用户都能看到。
3. 系统设计
3.1 网络通信设计
-
客户端 (
Client
类): 负责维护与服务器的连接,发送消息,以及接收来自服务器的广播消息。 -
服务器 (
Server
类): 负责监听客户端的连接请求,接收客户端消息,并广播给所有连接的客户端。
3.2 用户界面设计
-
使用JavaFX实现用户界面,包括用户名和服务器地址输入框、聊天窗口、消息输入框等。
4. 实现细节
4.1 JavaFX UI实现
-
使用
FXMLLoader
加载FXML布局文件。 -
通过控制器类(
ChatController
)管理事件和业务逻辑。
4.2 网络通信实现
-
使用
Socket
和DataInputStream
/DataOutputStream
进行网络数据的读写。 -
服务器使用
ServerSocket
监听客户端连接,并为每个客户端创建一个线程(ServiceReaderThread
)。
4.3 线程安全与UI更新
-
所有UI更新操作都在JavaFX的主线程中通过
Platform.runLater()
执行。
5. 测试计划
-
单元测试:对
Client
和Server
类的各个方法进行测试。 -
集成测试:测试客户端和服务器的连接、消息发送和接收功能。
-
用户测试:邀请用户测试应用程序的可用性和界面友好度。
6. 部署说明
-
确保Java环境已安装。
-
将应用程序的JAR包和依赖库部署到目标机器。
-
运行
App
类的main
方法启动应用程序。
7. 用户手册
-
启动应用程序并输入用户名和服务器地址。
-
点击连接按钮加入聊天室。
-
在聊天窗口中查看消息,在输入框中输入消息并按回车键发送。
-
看视频操作即可
-
本机连接本机输入服务器地址输入:127.0.0.1即可,先启动服务端再启动客户端
-
局域网下,输入服务端的电脑ip即可,ip获取,win+r---->输入:cmd---->回车---->输入ipconfig,复制ipv4的IP就好了,客户端全部输入这个ip,可以进到同一个聊天室
8. 维护与支持
-
记录所有已知问题和解决方法。
-
提供用户反馈渠道,用于报告新问题或请求新功能。
9. 版本历史
-
v1.0: 初始版本,实现了基本的聊天室功能。
-
获取直接使用的exe+源代码的资源请关注下方wx公众号,后台留言:聊天室1.0,谢谢支持,辛苦啦,祝大家五一幸福,不需要环境安装,也有源代码可自行部署(v2.0增加了头像,私聊,好友列表等,敬请期待,作者正在备赛蓝桥杯国赛,有感兴趣的,可以随时交流:wx:15692400246)
-