主要设计了JAVA即时通信技术的基本功能。现在系统功能虽然已经设计完成,但在技术上仍然有待于提高。如建立群聊功能、建立视频聊天、建立语音聊天等。即时通信,由于其具有实时性、跨平台性、成本低、效率高等优点而受到广泛的使用。设计并实现一个能够处理多用户进行实时、安全的即时通信系统具有较强的现实意义。该系统设计基于JAVA的简单即时通信系统,系统采用C/S模式。
《江苏通信》Jiangsu Communication(双月刊)曾用刊名:江苏通信技术,1985年创刊,立足江苏通信行业,面向世界通信发展,报道最新科技成果,开展学术技术培训交流。坚持为社会主义服务的方向,坚持以马克思列宁主义、毛泽东思想和邓小平理论为指导。
0 前 言
即时通信工具以实时交互、资费低廉等优点,受到了广大个人用户的喜爱,成为网络生活中不可或缺的一部分。 即时通信系统主要是由服务端和客户端两部分组成:服务端是整个即时通信系统运作的枢纽,包括登录、数据库设定、服务器参数设定、启动服务、关闭服务、组织结构管理、用户管理、公告管理、个性化设计;客户端是即时通信系统中主要的交流途径,是系统中使用频率最高、使用覆盖面最广的一个模块,这个模块的设计除了功能实现外,人机交互的友好性也是系统设计要考虑的一个重要因素。
1 系统概述
服务器端模块的具体内容。
1.1 消息处理模块,对来自客户端请求的消息进行接收
如果接收的消息是一个请求,比如添加好友,则调用相关的请求处理模块进行处理,并发送处理结果至客户端。如果是一条信息,则对该信息进行转发或调用数据处理模块将信息添加到数据库。
1.2 请求处理模块,对来自客户端请求的消息进行分析
通过分析后服务器端将会把相应的结果返回给客户端。
1.3 数据处理模块,操作用户数据的模块
供消息处理模块和请求处理模块调用,对用户数据进行操作,将操作后的数据保存至数据库中。
2 客户端模块的具体内容
(1)注册模块。获取用户输入的注册信息,发送至服务器端进行注册。
(2)登录模块。将用户输入的用户名和密码发送至服务器端进行验证,并等待服务器端返回的结果。
(3)聊天模块。向好友发送消息或留言,模块将消息发送至服务器端,服务器端对消息进行分析,并实现相应的操作。
(4)好友管理模块。模块将会向服务器端发送相关请求,并返回相应结果给用户。
(5)用户管理模块。模块将会向服务器端发送相关请求,并返回相应结果给用户。
3 系统功能分析
注册模块包括用户名,昵称,密码,确认密码这些基本信息。用户填写好这些基本信息后即可进行登录。
登录模块主要包括用户名和密码基本信息。用户输入用户名和密码进行登录,身份验证通过即登录成功,进入用户主界面,可进行聊天、查找好友等操作(如果用户名不正确,则提示未找到该用户;如果密码不正确,则提示密码错误)。
聊天模块主要用来向好友发送消息或留言、发送文件和聊天记录这些基本信息,用户打开聊天框架向好友发送消息或留言后,服务器会对消息进行分析并进行相应的处理。如果消息可行,服务器将会把消息发送至对方好友;如果消息出现错误,服务器将会把消息返回至用户以便修改。
好友管理模块主要包括添加好友和查找好友这些基本信息。用户在主界面中可进行好友管理操作,好友管理其中包括添加好友和根据昵称添加好友。单击添加好友输入好友用户名,单击根据昵称添加好友输入好友昵称,消息将发送至服务器端,服务器会对消息进行分析并进行相应的处理,对方系统将会显示好友添加请求消息,对方单击是则添加好友成功,对方单击否则拒绝添加你为好友(如果不存在该用户则提示未找到该用户,如果该用户已经是你好友则提示你与该用户已经是好友)。
用户管理模块包括ID,昵称,性别,所在城市和简介这些基本信息。用户在主界面中可对用户自己自身的资料进行管理,在主界面中单击头像可对用户头像进行管理(拉伸,原始或修改頭像),同时还可对用户自身的ID,昵称,性别,所在城市和简介这些信息进行添加或修改。
4 系统设计
根据系统分析阶段所确定的系统的功能,就可设计出一个能在计算机网络环境上实施的方案,即建立新系统的物理模型。这个阶段的任务是设计软件系统的模块层次结构,以及设计模块的控制流程,其目的是明确软件系统“如何做”。该系统主要从总体设计和子模块设计两方面来介绍系统设计。
4.1 系统总体设计
总体设计又叫概要设计,是确定软件如何做的过程。JAVA即时通信系统分为服务器端和客户端两大模块。其中,服务器端模块又分为消息处理模块、请求处理模块、数据处理模块三大子模块,客户端模块又分为注册、登录、聊天、好友管理、用户管理五大子模块。
4.2 系统流程
系统流程是用来对系统进行进一步的模块划分及细化的一个过程。该系统的系统流程过程如下。
从数据起点注册输入注册信息数据流通过注册成功的变换处理进入数据终点登录。再从数据起点登录开始,通过输入登录信息数据流和登录成功变换处理可进入聊天、好友管理和用户管理三个数据终点。而后以聊天为数据起点,通过输入聊天信息的数据流和发送成功的变换处理,进入聊天记录的数据终点。同样,以好友管理为数据起点,通过输入添加好友数据流和添加好友成功变换处理,进入更新后好友列表数据终点。以用户管理为数据起点,通过输入修改资料数据流和修改成功变换处理,进入更新后用户信息数据终点。
4.3 系统数据库设计
数据厍设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。该系统主要通过E-R图和逻辑结构设计图来介绍数据厍设计。系统E-R图包括实体、属性和实体与属性之间的关系三大类。其中关系包括一对一、一对多、多对多的关系。该系统的实体有用户和好友两个实体,其中用户实体有用户名、昵称、密码、所在城市、头像和性别这些属性,好友实体有用户号和好友号两个属性。用户和好友之间的关系是管理关系,该关系属于多对多的关系。一个用户可以和多个好友通信,一个好友也可以和多个用户通信。
主要参考文献
[1]刘寿强,温子梅.企业即时通信系统(EIM)安全性初探[J].计算机安全,2004(8):29-31.
[2]熊小敏,刘瑛,陈惠清.基于Java的网络即时通讯系统的设计与实现[J].计算机与现代化,2005(12):89-91.
[3]钟岱晖.在实战中成长:C,,开发之路[M].北京:电子工业出版社,2009.