Java聊天室程序源
2 需求分析
2.1 业务需求
1. 与聊天室成员一起聊天。
2. 可以与聊天室成员私聊。
3. 可以改变聊天内容风格。
4. 用户注册(含头像)、登录。
5. 服务器监控聊天内容。
6. 服务器过滤非法内容。
7. 服务器发送通知。
8. 服务器踢人。
9. 保存服务器日志。
10.保存用户聊天信息。
2.2 系统功能模块
2.2.1 服务器端
1.处理用户注册
2.处理用户登录
3.处理用户发送信息
4.处理用户得到信息
5.处理用户退出
2.2.2 客户端
1.用户注册界面及结果
2.用户登录界面及结果
3.用户发送信息界面及结果
4.用户得到信息界面及结果
5.用户退出界面及结果
2.3 性能需求
运行环境:Windows 9x、2000、xp、2003,Linux
必要环境:JDK 1.5 以上
硬件环境:CPU 400MHz以上,内存64MB以上
3.1.2 客户端结构
ChatClient.java 为客户端程序启动类,负责客户端的启动和退出。
Login.java 为客户端程序登录界面,负责用户帐号信息的验证与反馈。
Register.java 为客户端程序注册界面,负责用户帐号信息的注册验证与反馈。
ChatRoom.java 为客户端程序聊天室主界面,负责接收、发送聊天内容与服务器端的Connection.java 亲密合作。
Windowclose 为ChatRoom.java的内部类,负责监听聊天室界面的操作,当用户退出时返回给服务器信息。
Clock.java 为客户端程序的一个小程序,实现的一个石英钟功能。
3. 2 系统实现原理
当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端
当用户发送聊天信息时,服务端将会收到客户端用Socket传输过来的聊天信息对象,然后将其强制转换为Chat对象,并将本次用户的聊天信息对象添加到聊天对象集Message中,以供所有聊天用户访问。
接收用户的聊天信息是由多线程技术实现的,因为客户端必须时时关注更新服务器上是否有最新消息,在本程序中设定的是3秒刷新服务器一次,如果间隔时间太短将会增加客户端与服务器端的通信负担,而间隔时间长就会让人感觉没有时效性,所以经过权衡后认为3秒最佳,因为每个用户都不可能在3秒内连续发送信息。
当每次用户接收到聊天信息后将会开始分析聊天信息然后将适合自己的信息人性化地显示在聊天信息界面上。
4.1.1 问题陈述
1.接受用户注册信息并保存在一个基于文件的对象型数据库。
2.能够允许注册过的用户登陆聊天界面并可以聊天。
3.能够接受私聊信息并发送给特定的用户。
4.服务器运行在自定义的端口上#1001。
5.服务器监控用户列表和用户聊天信息(私聊除外)。
6.服务器踢人,发送通知。
7.服务器保存日志。
结束语
本文讨论了如何利用java技术开发聊天室系统,基本满足了结构化、界面友好、速度快、安全性以及稳定性等特点。
系统着重研究并实现了网络应用的部分。根据实现的情况看,具有较友好的聊天界面生成效果,以及流畅的网络通信效果。生成的聊天室可以达到基本的聊天要求,具有较高的研究价值。
系统具有目前聊天室的基本功能:包括支持多种头像,字色,语气选择,支持emote,支持私聊,支持在线聊友查找,支持分屏显示,支持用户定制自己的私人头像,支持脏话过滤,支持嘉宾聊天。屏蔽掉自己讨厌的人物,可以给所有聊友发公共信息。具有速度快,高稳定性,占用系统资源少,用户界面友好等特点。
通过毕业设计,发现自己在理论研究和实际工作能力等方面都得到了提高,受益匪浅。同时在老师的指导和课题组同学的共同帮助下,及时总结研究成果,这些无疑会对我今后的工作和学习带来很大的帮助。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
项目说明: 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术、通信工程、软件工程、自动化、电子信息等相关专业,更为适合; 4、下载使用后,可先查看README.md文件、项目说明(如有),本项目仅用作交流学习参考,请切勿用于商业 在日常工作生活中 内容概要:聊天室程序 适用人群:学生、老师、企业员工,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 使用场景及目标: 能学到什么:java的开发技巧和经验 阅读建议:此资源,不仅代码编写实现也更注重内容上的需求分析和方案设计,所以在学习的过程中要结合这些内容一起来实践,并调试对应的代码。
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计&课程设计&毕设&课设-java-Java聊天室程序(java) .zip (248个子文件)
client.bat 15B
server.bat 14B
ChatRoom.class 12KB
ServerFrame.class 9KB
Register.class 7KB
ServerFrame.class 7KB
Login.class 6KB
Connection.class 5KB
Connection.class 4KB
Clock.class 4KB
ChatRoom.class 3KB
AppServer.class 2KB
WordFilter.class 2KB
AppServer.class 2KB
Register.class 2KB
Login.class 2KB
Clock.class 1KB
Register$1.class 1KB
ChatRoom$Windowclose.class 814B
ChatRoom$6.class 672B
ChatRoom$7.class 672B
ChatRoom$5.class 672B
ChatRoom$4.class 660B
ChatRoom$3.class 660B
ChatRoom$2.class 660B
ChatRoom$1.class 660B
ServerFrame$3.class 630B
ServerFrame$1.class 628B
ServerFrame$2.class 624B
ServerFrame$4.class 622B
Clock$1.class 597B
Register_Customer.class 490B
ChatRoom$Windowclose.class 469B
Clock$1.class 463B
Message.class 453B
Chat.class 450B
Customer.class 423B
ChatClient.class 403B
Exit.class 369B
Register_Customer.class 335B
Chat.class 320B
ChatClient.class 297B
Customer.class 282B
Message.class 275B
Exit.class 256B
Exit1.class 256B
.classpath 226B
stylesheet.css 1KB
stylesheet.css 1KB
Thumbs.db 259KB
Thumbs.db 25KB
Thumbs.db 25KB
Thumbs.db 23KB
Thumbs.db 23KB
serverip.gif 37KB
serverip.gif 37KB
login.gif 27KB
login.gif 27KB
inherit.gif 57B
inherit.gif 57B
serialized-form.html 79KB
serialized-form.html 79KB
ServerFrame.html 42KB
Register.html 35KB
ChatRoom.html 35KB
Clock.html 32KB
Login.html 31KB
ServerFrame.html 27KB
Connection.html 22KB
Clock.html 21KB
Login.html 21KB
Register.html 20KB
HeadJFrameTest.html 19KB
Connection.html 16KB
ChatRoom.html 15KB
AppServer.html 15KB
HeadFile.html 13KB
AppServer.html 13KB
WordFilter.html 13KB
index-9.html 13KB
index-15.html 12KB
Register_Customer.html 12KB
Chat.html 12KB
WordFilter.html 12KB
Register_Customer.html 12KB
index-3.html 12KB
Chat.html 11KB
Message.html 11KB
constant-values.html 11KB
Customer.html 11KB
Message.html 11KB
index-16.html 11KB
Customer.html 10KB
ChatRoom.Windowclose.html 10KB
index-2.html 10KB
Exit.html 10KB
Exit.html 9KB
index-2.html 9KB
ChatClient.html 9KB
ChatClient.html 9KB
共 248 条
- 1
- 2
- 3
资源评论
大太阳na
- 粉丝: 15w+
- 资源: 543
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功