即时通讯聊天系统 毕业设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业设计(论文)题目即时通讯聊天系统
姓名
院系
专业
指导教师
年月日
即时通信聊天系统的设计与开发
摘要
互联网中的即时通讯聊天系统的研究已经成为了当今网络通讯技术发展的一个热点,局域网内的即时通讯聊天系统更是成为了当今社会通讯技术发前沿阵地。
局域网即时通讯软件的诞生不仅加强推动了企业工作效率的提高,为培训企业的教学带来了新的思路和手段,还为人们之间的交流创建了一种新型的、廉价的、快讯的、简便的工作方式,目前的即时通讯系统不仅仅是娱乐聊天的工具,更是影响着局域网内部的管理及其交流方式。
本系统采用客户机/服务器(C/S)模式,本系统开发环境是JAVA 6.0,遵循网络通讯技术基本数据传输协议TCP/IP协议,本课题的最基本的功能是通过计算机之间的文本数据的互换的形式实现思想的交流和沟通,优点是方便快捷。
关键词:数据传输,传输控制协议,服务器,客户端,C/S模式
THE DESIGN AND IMPLEMENTATION OF THE INSTANT
MESSAGING SYSTEM
ABSTRACT
The Internet chat of instant communication system has become the current network communication technology of the development of a hot, local area network of instant messaging chat system but also became today's society communication technology hair forward position. LAN instant messaging software birth not only strengthen promote the enterprise work efficiency, increase the enterprise training brings new ideas and teaching means, for communication among people created a new, cheap, flash, simple way of working, and at present instant communication system is not just entertainment chat of tools, but also influence the local area network management and its internal communication. The system USES the client/server (C/S) mode, this system development environment is JA V A 6.0, follow the network communication technology basic data transfer protocol TCP/IP protocol, the subject of the basic function of computer is through the exchange of data between text in the form of the implementation, exchange and communication, the advantage is convenient and quick.
KEY WORDS: Data transmission, control protocol, server, client, C/S mode
目录
前言 (1)
第1章系统的需求分析 (3)
1.1 课题技术支持 (3)
1.2 系统分析 (3)
1.3 需求分析 (3)
1.4 相关理论知识 (4)
1.4.1 网络通信与网络协议基础 (4)
1.4.2 TCP/IP协议族 (4)
1.4.3 面向对象的开发过程 (5)
1.4.4 开发工具 (6)
1.4.5 运行环境 (6)
1.4.6 开发方法的选择 (7)
第2章系统的总体设计 (9)
2.1 功能需求描述 (9)
2.2 目标系统要求 (9)
2.3 总体设计 (9)
第3章系统主要功能模块设计 (12)
3.1 课题分析 (12)
3.1.1 系统协议 (12)
3.1.2 系统核心技术 (12)
3.2 客户端设计图例 (12)
3.2.1 客户端流程图 (12)
3.3 客户端功能介绍及实现 (14)
3.3.1 客户端相关类的简介 (14)
3.3.2 客户端的管理类类的简介 (20)
3.3.3 辅助类或接口 (20)
3.4 服务器设计图例 (21)
3.4.1 服务器流程图 (21)
3.5 服务器端功能介绍及实现 (22)
3.5.1 服务器端相关类的简介 (23)
3.5.2 服务器与客户端的数据传递原理 (24)
3.6总结 (24)
第4章系统测试 (26)
4.1 课题测试 (26)
4.2 测试类型简单介绍 (26)
4.2.1 单元测试 (26)
4.2.2 集成测试 (26)
4.2.3 有效性测试 (27)
4.2.4 系统测试 (27)
4.3 测试过程 (27)
4.3.1 登录测试 (27)
4.3.2 注册测试 (27)
4.3.3 聊天测试 (29)
4.4 总结 (29)
结论 (30)
谢辞 (31)
参考文献 (32)
前言
选题背景
随着互联网技术的广泛普及和应用,通信和电子信息产业在全球迅猛发展起来,从而也带来了软件技术人才需求量的不断增加,软件技术教育和人才培养成为社会所关注的一项重要战略任务。
为了加强软件开发技术方面的相关知识的教育,为加强学员间的日常的学习交流,以及平时工作时问题的交流,于是进行自主研发局域网内的即时通信系统。
同时通过项目加强新同事间的交流与技术的配合,为以后的工作奠定良好的基础。
所以开发并研究了本课题。
随着网络的普及,人们迫切希望能通过一种现代化的信息技术平台,更高效的学习软件开发技术知识;宏达科技有限公司也希望有这样一种方式,借助它提高教学质量和人才培养质量。
主要内容及研究意义
在信息爆炸、技术为王的今天,即时通讯技术得到了迅猛的发展,可对其背后的哲学思考却被忽略和淡化,此文着重反思人的主体性,以期抛砖引玉,给即时通讯时代个人主体性的健康发展提供借鉴和现实的积极启示。
该系统以建设一个专业的有特色的专业教学工具为出发点,以提高学员和广大软件开发爱好者的软件开发技术知识,以利于更好的教学同时加强学员和老师、学员与学员之间的学习交流,以JAVA编程语言为基础,涵盖了JAVA中的GUI、SWING、网络编程、网络通讯、多线程技术等一些JavaSE 技术所开发
该系统的主体是局域网聊天通信,它主要实现了用户注册、登录功能,提供了单对单,单对多之间的私人信息聊天,局域网内之间的群聊,以及局域网内人与人之间的文件传输等功能,它给学员提供了一个交流、互动的平台,为学员的学习提供了坚实的学习平台。
在当今信息瞬息万变的时代,在计算机普及千家万户的今天,此系统的开发在交流和现代化的教学体系改革方面发挥了积极的作用。
论文的组织结构
第一部分:前言。
介绍了论文的选题背景、主要内容和研究意义。
第二部分:系统的需求分析。
对系统的开发与设计进行需求分析。
第三部分:系统的总体设计。
对整个系统进行总体的概述说明。
第四部分:系统主要功能模块的设计。
对各模块的设计进行详细说明。
第五部分:局域网聊天系统测试。
对系统的各个模块进行测试。
第六部分:结论。
对整个设计的总结。
第七部分:谢辞。
第八部分:参考文献。
第1章系统的需求分析
1.1 课题技术支持
运用面向对象思想,通过较完善的挖掘,构建稳定的底层通讯框架。
目标:“真实建模”“最大可重用”“对变化有弹性”
手段:抽象封装/多态/继承
准则:开闭原则/单一职责原则/对接口编程/里氏代换法则等
工具:各种设计模式(单例/工厂/策略/代理/门面/适配器等)
1.2 系统分析
应用构建通常分层实现表示层、业务层、持久层,结合该课题,
业务层分析:课题核心是通讯,考虑到通讯是很多其他应用实现的核心部分,建议搭建健壮并独立的通讯平台,以适应未来系统扩展和移植,目前的短消息传递可以作为该平台的基本扩展,以组件的形态插入到平台上满足需求。
数据访问建议采用数据访问对象,封装对持久层的访问细节。
目前采用文件持久层,定制合理的文件格式,提高效能。
并对持久层的未来扩展,比如改为数据库存储做好铺垫。
表示层应脱离业务模型层,独立出来,表示层调整不应振动到业务层。
表示层一般考虑用户体验问题,UI简单易用并美观大方,才是最理想的软件。
1.3 需求分析
聊天工具大多数由客户端程序和服务器程序外加服务端,本程序采用客户机/服务器架构模式。
通过Java提供的Socket类来连接客户机和服务器并客户机和服务器相互通行,由于聊天是多点对多点的聊天。
主要有两个应用程序,分别为客户程序和服务器程序。
服务器应用程序主要用于程序转发,以及上所有用户发送系统信息;客户端程序主要用于客户端聊天记录的显示和信息输入,采用Client/Server体系结构,即客户端/服务器
结构。
聊天服务器专门用于监控用户状态和转发信息,客户端负责接收消息用户序列和消息文本发送到服务器。
该聊天系统实现群聊用户登录,退出聊天系统等功能。
1.4 相关理论知识
本课题涉及到了网络数据传输,需要了解相关的数据网络传输知识,网络数据的传输是本课题不可绕过的技术,所以了解相关网络数据传输的知识是相当重要的。
1.4.1 网络通信与网络协议基础
Java语言可称得上是当今Internet上最流行的编程语言。
对一个网络功能,其他语言需要数行或数页代码,而Java也许只需要一条或几条语句。
下面介绍Java网络编程涉及的计算机网络的术语、概念。
计算机网络是计算机技术与通信技术相结合而形成的一种新的通信形式。
计算机网络由硬件和软件组成,软件包括网络操作系统、通信软件和网络通信用的通信协议。
Internet允许各个部门和组织根据自己的需求和经济能力选择自己的网络,然后再寻求一种方法将所有类型的网络互连起来。
Internet网络体系结构也称为Internet网络通信协议,它分为四个层次,TCP/IP协议(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是它不同层次协议的总称。
1.4.2 TCP/IP协议族
TCP/IP协议族中的传输层和互联网层协议为网络中的各主机提供通信服务,它们也是实现应用层协议的基础。
传输层TCP协议和互联网层IP 协议是TCP/IP协议族中的核心协议。
1. 传输控制协议TCP
传输控制协议(TCP)TCP/IP协议族中的传输层,提供可靠的数据传输服务。
TCP是一种面向连接的传输层协议,意味着该协议准备发送数据
时,通信之间必须建立起一个逻辑上的连接。
TCP协议位于IP协议的上层,通过提供效验、流控制及序列信息弥补IP协议可靠性的缺陷。
2. 互联网层协议IP
互联网层协议(IP)属于TCP/IP模型的互联网层。
提供关于数据应如何传输以及传输到何处的信息。
IP是一种是TCP/IP可用于网络连接的协议,即TCP/IP可跨域多个局域网段或通过路由器跨域多种类型的网络。
在一个网际环境中,被连接在一起的单个网络被称为子网。
数据帧的IP部分被称为一个IP数据包,IP数据包如同数据的封面,包含了路由器在子网中传输数据所在必须的信息。
IP数据包包括头和数据,总长度不能超过65535字节。
IP协议是一种不可靠的、无连接的协议。
然而,TCP/IP协议族中更高层协议可使用IP信息确保数据包按正确的地址进行传输。
IP数据包并不包含一个校验和部件,包头校验仅仅验证IP包头中路由信息的完整性。
如果当数据包被接收时伴随信息的校验和值不正确,则数据包将被认为已破坏并被抛弃,同时,一个新的数据包被发送。
3. 用户数据包协议UDP
用户数据包协议UDP(User Datagram Protocol),位于TCP/IP模型的传输层。
不同于TCP的是,它是一种无连接的传输服务,它不保证数据包以正确的顺序接收。
1.4.3 面向对象的开发过程
面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,面向对象编程具备了几个优点,比如:代码维护方便、可扩展性好、支持代码重用技术等等。
这些优点是面向过程编程语言所不具备的。
下面我们就来谈谈面向对象技术的这些优点:
1. 模块化
模块化是面向对象编程中的一个特征。
实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该
名字空间的其他成员。
2. 可扩充性
是对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便,容易的进行扩充和修改,这种扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制。
面向对象编程从本质上支持扩充性。
如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。
面向对象的程序设计可以用很好的可扩充性.这是由于类可以根据人对事物的理解而进行丰富,没有必要进行作大的改动,可以利用继承,对新的类添加属性和方法.用它可以生成系统的简单雏形,在征求用户的意见,在加入新的类,以及类的方法与属性等。
3. 代码重用
可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务。
由于功能是被封装在类中的,并且类是作为一个独立实体而存在的,提供一个类库就非常简单了。
1.4.4 开发工具
采用jdk1.6开发包,Java运行环境为:Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
开发工具:Myeclipse8.5
1.4.5 运行环境
硬件环境
处理器:InterCR300 或更高
内存:128MB或更高(建议256MB)
硬盘空间:80MB以上
软件环境
软件环境是一个系统开发的工具,它取决于开发人员对软件的熟悉程
度,如果开发人员选择一个不熟悉的软件开发会大大增加开发系统所需要投入的成本,所以说选择软件环境也是很重要的。
操作系统: Windows 2000/Windows XP
软件开发语言:JAVA
1.4.6 开发方法的选择
在开发方法的选择上,选择了演绎式原型法与生命周期法相结合的方法。
具体来说,就是在系统开发之前对系统有一个总体框架设想,各功能单元的结构和功能也比较清楚,但是还没有具体实现。
系统完成什么功能,分成哪几个部分,各个部分又有哪几个模块,都已理解掌握,且以后不需要做更大的变动,只是具体到每个模块,还没有全部实现。
具体地设计可能是完全实现一个模块,也可能是用一个效率高地模块代替一个旧模块。
信息系统的开发是一项比较复杂的工作,我们必须选用科学的有效的开发方法。
近年来,国内外已逐步总结出一些开发信息系统的方法和技术,但是,从目前的情况来看,系统的开发技术仍是一个比较薄弱的环节。
那么根据本系统开发的要求,本系统选择了生命周期法和原型法相结合的方法。
现具体介绍如下:
生命周期这个概念源于系统工程方法。
广义地说,任何系统均有其发生、发展、成熟、消亡或更新换代的过程,这个过程称为系统的生命周期。
主要包括系统调查阶段、系统分析、系统设计、系统实施及系统维护与评价五个部分。
根据系统设计而对整个系统实施,包括物理实施,程序设计,调试等。
实施是最后的一步,关系着最后的成功。
在建筑学和机械设计学中,“原型”指的是其结构、大小和功能都与某个物体相类似的模拟该物体的原始模型。
在管理信息系统开发中,用“原型”来形象地表示系统的一个早期可运行版本,它能反映新系统的部分重要功能和特征。
“原型方法”则是利用原型辅助开发系统的一种新方法。
原型方法要求在获得一组基本的用户需求后,快速地实现新系统的一个“原型”,用户、开发者及其他有关人员在试用原型的过程中,加强通信和反馈,通过反复评价和反复修改原型系统,逐步确定各种需求的细节,适应需求的变化,从而最终提高新系统的质量。
因此可以认为原型方法确定用户需
求的策略,它对用户需求的定义采用启发的方式,引导用户在对系统逐渐加深理解的过程中作出响应。
原型法主要包括确定系统基本需求阶段、构造初始原型阶段、原型的使用评价阶段、修改原型阶段和确定模型后的处理阶段。
原型法的基本思想是:凭借着系统分析人员对用户要求的理解,在强有力的软件环境支持下,快速地给出一个实实在在的模型(或称原型、雏形),然后与用户反复协商修改,最终形成实际系统。
在本系统中选择了演化型(EvolutionaryPrototying)原型法,其目的不在于改进规格说明和用户需求,而是将系统改造得易于变化,在改进原型的过程中将原型演化成最终系统。
它将原型方法的思想贯穿到系统开发全过程,对满足需求的改动较为适合。
第2章系统的总体设计
2.1 功能需求描述
聊天工具大多数由客户端程序和服务器程序外加服务端,本程序采用客户机/服务器架构模式。
通过Java提供的Socket类来连接客户机和服务器并客户机和服务器相互通行,由于聊天是多点对多点的聊天。
主要有两个应用程序,分别为客户程序和服务器程序。
服务器应用程序主要用于程序转发,以及上所有用户发送系统信息;客户端程序主要用于客户端聊天记录的显示和信息输入,采用Client/Server体系结构,即客户端/服务器结构。
聊天服务器专门用于监控用户状态和转发信息,客户端负责接收消息用户序列和消息文本发送到服务器。
该聊天系统实现群聊用户登录,退出聊天系统等功能。
2.2 目标系统要求
整体上要实现对用户注册,登陆,好友上线,好友下线,单发消息,群发消息等功能。
2.3 总体设计
为了使本系统在设计中更加方便和直观,所以使用了面向对象的设计思想。
面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。
所谓的对象是一种抽象的名称,用来对应实现世界存在的"东西"。
一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。
对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。
用户无需知道其任何细节,操作是封闭的,对象之间能通过函数调用相互通信。
类可视为一个产品模具、一个模块。
在面向对象设计中,类是对象的
原型,是对象的制作器。
类的概念是面向对象程序设计最重要的特征。
所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。
面向对象设计的核心是类的设计。
本系统主要划分为客户端、服务器两部分。
客户端主要完成对用户发送的信息进行处理、登录、注册的处理,客户端功能如图2-1所示。
图2-1 客户端功能图
服务器段主要是接受客户端响应的请求来就行处理,在客户端发送给服务器的时候将请求封装成特定格式的对象发送给服务器,服务器根据请求来做出响应的处理,服务器端的功能图如图2-2所示。
图2-2 服务器端功能图
第3章系统主要功能模块设计
3.1 课题分析
系统需求分析由项目小组成员经过多次的小组会议与讨论,最终制定一套统一的系统设计框架(用例和类图)。
经过讨论为促进小组成员对课题核心技术的理解和掌握,在设计阶段要求课题小组成员都要对课题核心技术进行相对的设计,另外要完成系统部分具体功能的实现。
3.1.1 系统协议
本系统为即时通信系统,主要以传递信息为主,经过分析制定信息传递格式为:定义一个类,让类实现可序列化接口,类中定义其需要传输的信息为其成员变量,信息以字可以序列化的对象进行传递。
3.1.2 系统核心技术
1. 客户端:客户端利用对套接字输入流、输出流进行传递保持连接的持续。
设计一个工具类,其类定义两个MAP成员变量,用于存储单独聊天窗口和群聊聊天窗口。
在定义一个工具类存储好友列表窗体。
2. 服务器端:采用多线程,定义信息处理接口,利用MAP存取在线用户与其对应的输出流,采用数据库技术存储用户的各种信息。
3.2 客户端设计图例
3.2.1 客户端流程图
客户端功能图简明扼要地展现了客户端的工作流程,如图3-1所示。
图3-1 客户端流程图
3.3 客户端功能介绍及实现
客户端是多个图形界面的组合,包括注册界面、登录界面、好友列表界面和聊天窗体界面,各个图形界面完成各自的功能。
其主要功能如下:
(1) 完成用户的注册;
(2) 客户的登陆;
(3) 客户信息之间的单聊、群发。
3.3.1 客户端相关类的简介
1. 客户端相关类的简介——QqClientLogin类
功能:qq客户端登录界面
登录界面实现介绍:
整个Frame由北部,中部,南部三个部分组成。
北部有一个Label; 中部有一个Panel(panel2),而这个Panel是一个3行3列的网格布局;南部有一个Panel(panel1) ,这个panel上有三个按钮。
登录界面如图3-3所示。
图3-3 登录界面
注册窗体:单机登录界面注册向导则关闭当前登录窗体,弹出注册窗体,注册窗体需要用户注册用户的基本信息,注册窗体如图3-4所示。
图3-4 注册窗体
2. 客户端相关类的简介——QqFriendList类
功能:qq客户端好友列表框界面
InfomBack类中更新在线的好友情况,关键代码如下:
boolean b = (Boolean) informBack.get(0);
if (b) {// 如果为真,用户上线通知
User user = (User) informBack.get(1);
System.out.println(user.getNickName() );
rf.add(user);// 添加到界面中
System.out.println(user.getNickName()+"上线");
} else {// 否则为下线通知
rf.remove(from);
System.out.println(from + "下线了");
}
Infom类中更新离线线的好友情况
if(!b){
Updatable updateable
=(Updatable)MessageContextForServer.getNeed("Updatable");
User user=(User)informback.get(1);
updateable.update(user);
MessageContextForServer.removeOutLine(from);
Iterator<Sendable> sendable =
MessageContextForServer.getOnLineValue();
while(sendable.hasNext()){
try {
sendable.next().send(message);
} catch (IOException e) {
e.printStackTrace();
}
}
}
好友列表框实现介绍:
这个列表框是个选项卡布局。
分为“我的好友”,“陌生人”两个选项卡。
在此,只实现我的好友选项卡,其余两个制作成两个按钮,不实现其功能。
整个Panel(Panel1是个BorderLayout布局)由北部,中部,南部三个部分组成。
北部有一个Button(我的好友);中部有一个ScrollPane (该控件中还有Panel(Panel2),该Panel是一个N行一列的网格布局(假设有50个好友)。
其中存放好友头像和编号(好友头像由Label数组处理));南部还有一个Panel(Panel3)(该Panel是一个2行1列的网格布局,其上放着两个按钮“陌生人”,群发信息”)。
总共用到三个Panel,注意顺序。
好友列表界面如图3-5所示。
图3-5 好友列表
3. 客户端相关类的简介——QqChat类
功能:这是与好友单聊的界面如图3-6 聊天窗体
聊天界面实现介绍:
整个Frame只有四个控件组成。
一个文本域(TextArea),两个面板(Panel),两个文本框(TextField),三个按钮(Button)。
这个Frame 是个默认的BorderLayout布局,中部是个文本域;南部是个面板,而这个面板上面有一个文本框和一个按钮;北部是个面板,而这个面板是个默认的BorderLayout布局,北部有一个文本框,西部和东部各有一个按钮。
聊天窗体如图3-6所示。
图3-6 聊天窗体
4. 客户端相关类的简介——QqAllChat类
功能:这是与好友群聊的界面
showAllMessage(Message m)显示群聊信息
聊天界面实现介绍:
整个Frame只有四个控件组成。
一个文本域(TextArea),一个面板(Panel),一个文本框(TextField),一个按钮(Button)。
这个Frame 是个默认的BorderLayout布局,中部是个文本域;南部是个面板,而这个面板上面有一个文本框和一个按钮。
5. 客户端相关类的简介——ClientConServerThread类
功能: 这是客户端和服务器端保持通讯的线程。
不断的读取从服务器端发来的信息并进行判断是哪类型的信息,然后做相应的处理。
功能描述:本系统之间的通信遵守一定的协议当用户登录的时候将自己的帐号密码与登录的标志发送给服务器,服务器接收到信息以后解析一下信息,验证帐号密码是否正确,若是正确则客户端与服务器建立连接,同时服务器将上线好友的信息发送给每一个在线的好友,刷新好友列表,同
样的当好友下线的时候发送信息给服务器,服务器进行解析将下线好友信息发送过给每一个在线好友进行好友列表的刷新,当单发群发的时候都发送信息给服务器,服务器根据之前定力的协议进行处理,发送给相应的用户。
//判断接收到的是否是好友上线的信息
boolean b = (Boolean) loginback.get(0);
if (b) {// 如果为真,登陆成功
User user = (User) loginback.get(1);
rf.add(user);// 添加自己的信息
ArrayList<User>onlineUser=(ArrayList<User>)loginback.get(2);
for (User u : onlineUser) {
rf.add(u);// 添加在线好友的信息
}else{
int n = (Integer) loginback.get(1);
if (n == 0) {
JOptionPane.showMessageDialog(null, "此用户已登录!", "错误",JOptionPane.ERROR_MESSAGE);
} else {
JOptionPane.showMessageDialog(null, "账户或密码错误!", "错误",JOptionPane.ERROR_MESSAGE);
}
}
6. 客户端相关类的简介——QqClientConServer类
功能:这是客户端连接服务器的后台
验证用户注册、登录信息的地方,若登录成功为该用户启动与服务器通讯的线程。
当用户登录的时候启动一个线程将自己的帐号密码进行处理,处理成特定的格式,发送给服务器服务器将帐号、密码提取出来,与服务器中保存的信息进行比较,如果帐号密码都正确则,让客户端与服务器成功连接,。