- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 10
专业课程设计I
基于JAVA的聊天室设计与实现
一、课题内容和要求
基于网络的文本交互软件的设计和实现,设计和实现一个简单的基于网络的文本消息发送和接收软件。基本要求:该软件能实现文本消息发送和接收功能。提高要求(1):支持以多播方式发送文本消息,提高要求(2):性能稳定,界面友好。按课程设计报告的要求写出详细的设计和实现报告。
二、设计思路分析
聊天室是一项进行文本交互的软件,应用广泛,并且实用性强的一个非常典型的人机交互系统。在信息世界里,聊天工具的使用是非常频繁的,如MSN、QQ、校内通之类的聊天工具许多人都正在使用。此次设计的聊天室系统主要针对文本信息的传送和接收,不能像QQ一样进行图片、音频、视频等文件的传输。虽然其功能简单,但是在开发技术和过程中,能够充分学习和使用JAVA的技术,进一步培养了面向对象程序设计的思想,加深对面向对象程序设计四大特性的理解。
人们日常生活中越来越多地使用聊天室这项应用来为自己的工作和学习服务。一个操作简单,界面友好、运行稳定的聊天室对于小型局域网的用户可以起到很好的交流作用。所谓聊天室就是一个可以让许多用户同时互相通信的网上园地,个人用户可以通过聊天室将自己融入整个主流社会中。
根据目前使用聊天室的用户需求显示,用户对于聊天室主要有以下几点要求:
(1)聊天功能:可以实时接收和发送信息,并能支持公聊和私聊的的方式,能够查看聊天记录,聊天过程中能对字体、表情等进行设定等。
(2)用户功能:可以随时注册和登录及注销,并能选择性加好友和删除好友以及查看对方的开放信息,还能看到对方的登录状态。
(3)文件传输功能:用户可以共享资源,能发送及接收文件。
(4)保密功能:用户可以设定自己的保密状态,使某些信息对于其他用户是不可见的。
(5)系统稳定:客户端与服务端的连接稳定,不出现或者少出现连接不上的情况。
三、概要设计
1、聊天室的简要功能介绍
该简易聊天室是为许多喜爱聊天的用户开发设计的,和许多大型的网络聊天室相比该小聊天室功能比较简单,但能实现基本的聊天功能,点对多、点对点聊天和基本的用户功能,登录、注销、查看在线用户等。
(1) 用户设置:
功能描述:用户自定义自己的登录名,成功设置后,服务端能接收到新设置的用户名;
(2) 登录功能:
功能描述:在服务端开启的情况下,用户可以以自己自定义或者默认的登录名和登录地址端口登录到客户端,并能在服务器端显示登录状态;
(3) 公聊:
功能描述:用户在聊天室中可以选择与“所有人”聊天,聊天室中的其他在线用户可以正常接收并正确显示公聊消息。
(4) 私聊:
功能描述:用户可以选择与聊天室的在线用户列表中的其他用户聊天。双方的聊天记录对于聊天室的其他用户是不可见的。
(5) 聊天心情:
功能描述:用户在聊天的过程中可以选择相应的心情来表达自己的情感。
(6) 系统消息:
功能描述:服务端正常运行的过程中,在聊天室的每一个用户都能接收服务器端发送的信息提示信息。
(7) 用户的状态.
功能描述:每一个客户端用户都可以实时看到目前其他在线用户的状态。
(8) 用户注销:
功能描述:用户可以注销自己的账号,并重新登记登录名和地址。
(9) 用户退出:
功能描述:用户可以在正常情况下退出聊天室。
(10) 服务端控制:
功能描述:只有在服务端开启的情况下,用户才能登陆成功和聊天;用户设置的地址端口也必须与服务端的侦听端口一致,否则不能登录。
2、模块描述
本聊天室分为聊天室服务端和聊天室客户端,服务端与客户端之间通过套接口Socket(TCP)连接。在java中使用套接口相当简单,Java API为处理套接口的通信提供了一个类.Socket.,使得编写网络应用程序相对容易.服务器采用多线程以满足多用户的请求,通过JDBC与后台数据库连接,并通过创建一个ServerSocket对象来监听来自客户的连接请求,默认IP地址为:默认端口为8888。
(1) 聊天室服务端模块图:
聊天室服务端
聊天室服务端
端口服务
启动服务
发送系统消息
停止服务
退出
服务器
消息显示
端口服务:输入要侦听的端口,默认为8888;
启动服务:启动服务器,并开始在设置的端口中侦听,客户端用户可以登录并开始聊天;
停止服务:关闭服务器,侦听结束。客户端用户不能再聊天;
发送系统消息:服务器端给所有人或者个别用户发送消息。
消息显示:可以显示所有用户的聊天记录,和上线、下线信息。
退出服务器:退出程序,并停止服务;
(2)聊天室客户端模块图:
聊天室客户端连接设置
聊天室客户端
连接设置
用户登录
退
出
发 送
接收聊天消 息
用户注销
用户设置
用户设置:用户可以设置自己的用户名进行聊天;
连接设置:用户可以设置自己的服务
文档评论(0)