Chat system will allow people to complete chat to more friends,and the system can add, delete somebody,can deal with new user registration, send messages, receive messages and so on.
Key
words : Multithreading ; Client/Server ;JAVA ;Socket ;Eclipse ;TCP/IP
目 录
1 绪论 1
1.1国内外聊天系统的研究现状 1
1.2 JAVA语言 2
1.2.1 Java的发展历史 2
1.2.2 Java的特点 3
1.2.3 Java与Internet 4
1.3 SOCKET编程 4
1.3.1 关于TCP/IP协议 4
1.3.2 服务器和客户机 5
1.4本文内容安排 6
2 需求分析 7
2.1 可行性研究 7
2.1.1 可行性分析 7
2.1.2系统功能需求 7
2.1.3 系统性能需求 8
2.1.4 系统运行需求 8
2.2 数据流图 8
2.2.1 顶层数据流图 8
2.2.2 一层数据流图 9
2.2.3 二层数据流图 9
3 概要设计 11
3.1系统实现原理 11
3.2 系统实现层次图: 12
3.3各模块详细功能 12
3.3.2服务器端结构 12
3.3.2 客户端结构 14
4 详细设计 19
4.1 系统流程图 19
4.1.1 系统总体流程图 19
4.1.2 系统客户端流程图 20
4.2 编写服务器端程序 20
4.2.1
问题陈述 20
4.2.2 解决
方案 21
4.3客户端程序编写 28
4.3.3 聊天室 38
参考文献 46
致谢 45
1 绪论
1.1国内外聊天系统的研究现状
目前国内外做聊天系统的公司很多,产品也琳琅满目,国内有诸如腾讯QQ、新浪UC、网易泡泡等,国外有著名的MSN(新版改名为Live Messenger)以及跨平台Gaim等。本人取最具代表性的QQ和MSN进行了一些研究,作为我开发聊天系统的准备。
腾讯无疑是国内即时通讯市场的霸主,自从99年进入即时通讯领域并迅速占市场之后,其在国内用户数量始终高居榜首,即使近几年面对微软MSN的强大攻势,腾讯QQ的时常占有率依然稳步增长。腾讯的成功与其对QQ的不断创新和完善是分不开的。
参考了许多网络上的资料,以及自己通过观察腾讯QQ运行时的各种细节。可以确定腾讯QQ是以多服务器提供服务、服务器总控客户端、客户端之间UDP直连通信的。并且在两个客户端之间不能建立直连的情况下,才由服务器进行中转通信。
其模型如图1-1
图1-1 腾讯QQ服务器-客户端模型1
与腾讯QQ不同,微软的MSN Messenger只使用了TCP作为传输层通
信协议,所有客户端与服务器进行连接,然后通过与服务器的TCP连接进行中转通信。
其模型如图1-2
图1-2 MSN服务器-客户端模型2
腾讯使
请下载论文,论文或程序为doc或rar格式,只上传部分目录查看,如果需要此论文或程序,请点击-下载论文,下载需要资料或是论文。