- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                开发 ICQ(早期的QQ)项目系统设计与实现等相关资料
1、项目的背景分析
(1)ICQ概述
ICQ是英文I seek you 的简称,中文意思是“我找你”。ICQ最大的功能就是即时信息交流,只要记得对方的号码(也即我们常用的ICQ号码),上网时可以呼叫对方,无论对方在哪里,只要对方上网打开ICQ,人们彼此就可以随时交流。
ICQ源于以色列特拉维夫的Mirabils公司。该公司成立于1996年7月,也就是在这个时候,互联网上最出名,下载使用人数最多的免费软件ICQ诞生了。可能是其不断增加的用户和广阔的前景以及广泛的应用前景和巨大的市场潜力,Mirabils的ICQ最终被美国在线AOL收购。
由于ICQ的成功,推动了ICQ的本土化,就中文的ICQ而言,现在已经越来越多,比如著名的深圳腾迅公司推出的OICQ(现在由于版权问题,已改名为QQ2001),还有由TOM.COM推出的Tomq等,这些软件技术都很好,而且简单易用,成为中国网民最喜欢的通信软件。
(2)为什么选择JAVA来设计QICQ?
Java是Sun Microsystem公司的James Gosling开发的编程语言。它以C++为基础,但是却是一个全新的软件开发语言。Java是一个简单,面象对象,分布式,解释性,强壮,安全,与系统无关,可移植,高性能,多线程和动态的语言-------这是 Sun给Java的定义。
Sun公司的口号就是网络就是计算机,Java能使所有东西从桌面计算平稳地转变为基于网络的计算,它是专门为此而建立的,并显然是为了完成这个任务而来的。
2、开发此项目的目的
(1)实用目的:该项目所能够解决的实际问题,实现彼此随时交流。
学习目的:通过该项目所应该让学员掌握的知识
通过设计和开发此项目,可以使我们(学员)能够将所学习到的Java方面的编程知识应用到实际的项目开发中,同时也是为了能够更深入地学习和掌握Java 的Socket编程、UDP编程、Swing GUI、JavaBean、JDBC、Java IO等方面的知识,开发出该项目。
3、项目的的主要功能要求
(1)采用Java Swing 组件进行程序
GUI用户界面设计分为服务端和客户端,对于服务端程序的GUI设计不是本项目的重点,主要在客户端程序;
要求同时提供两种形式的客户端---Java Application和Java Applet,要求在客户端程序中至少应包含有菜单、工具条、状态条、树形控件、分割面扳等,同时还应该有各种形式的对话框。
(2)利用对象序列化技术实现将程序的各个配置选择项目保存起来。
(3)利用JavaBean技术,为本项目的程序设计出自己应用需要的组件。
(4)利用JDBC技术将用户的注册信息和工作状态信息保存到数据库中
(5)服务服务端程序的主要功能
1)提供一个工作状态的信息显示面板,将服务端和客户端程序的状态信息显示在该面板中
2)程序的主要功能模块应该包含有如下几大部分:
用户管理:用户登录、用户注册和用户忘记密码;
好友管理:查找好友、读取好友信息、添加好友、添加新的好友、删除好友、加我为好友
其它:处理用户退出程序
4、客户端程序的主要功能
(1)应用程序的客户端
1)用户管理
2)好友管理
5、Applet程序客户端的主要功能
(1)用户管理
(2)好友管理
6、系统分析
(1)服务器端程序的业务流程描述
 
(2)客户端请求:请见上图。
(3)客户端请求的数据内容如下:
客户向服务器通过Socket发送用户ID(QQ号码、手机号码和电子邮件)和登录口令进行登录
用户注册时,则向服务器通过Socket发送用户的个人信息
3)用户向导
(4)服务器响应:请见下面的说明 
7、设计编程思路(正常包含有架构设计、概要设计及详细设计,下面主要侧重于详细设计) 
(1)系统采用客户/服务器摸式(C/S)和Web页面/服务器摸式(B/S)(2)服务器程序: 服务器与客户之间通过Socket套接字进行TCP连接。
在java中使用套接字相当简单,Java API为处理套接字的通信提供了一个类.Socket,使得编写网络应用程序相对容易。
服务器采用多线程以满足多用户的请求,通过JDBC与后台数据库连接,并通过创建一个ServerSocket对象来监听来自客户的连接请求,默认端口为8080,然后无限循环调用accept()方法接受客户程序的连接
(3)客户程序 
客户通过Socket(InetAddress,port)建立与服务器的连接。服务器与客户都通过构造BufferedReader,PrintWriter来建立输入输出流,然后双方通过该输入输出流来相互传递信息,一旦收到客户方的连接请求,服务器accept()方法返回一个新建的Socket对象。
客户端然后向服务器
                您可能关注的文档
最近下载
- 第一单元+写话:注意说话的语气(教学课件)-2023-2024学年二年级语文下册单元写话能力提升(统编版).pptx VIP
 - 心理健康与心理健康观.ppt VIP
 - 关爱保护未成年人.pptx VIP
 - 实践党创新理论“三个境界”.doc VIP
 - 企业危险化学品及危险化工工艺安全管理规定.docx VIP
 - 数电模电完整版练习试题附答案.doc
 - 企业设备、建(构)筑物拆除活动污染防治技术指南.pdf VIP
 - 2020 电工装备供应商数据采集及接口规范第1部分通用部分.docx VIP
 - 《画出你的想象》教学设计4-10画出你的想象-二年级上册美术.docx VIP
 - 心理卫生 mental health.ppt VIP
 
原创力文档
                        

文档评论(0)