菜单
  

    本系统主要通过Socket原理实现。服务器与客户端的Socket类型分为面向连接的字节流类型和面向无连接数据报类型。面向连接的字节流类型的原理相对比较复杂,在这种类型的Socket的工作过程中,必须首先启动服务器端,通过调用socket()函数建立一个Socket对象,然后调用Bind()函数将该Socket对象和本地网络地址绑定到一起,再调用Listen()函数使该Socket对象处于侦听状态,并规定它的最大请求的数量。面向无连接数据报类型的Socket工作过程较为简单,双方不需要进行太多的沟通与交互,客户机直接将用户的请求打包发送到服务器端,省略了建立一个固定信息通道的过程,服务器端也是直接将处理的结果发送给客户端,每个发送的数据报都携有传递所需要的地址信息。

    2    需求分析
    2.1    硬件软件需求
    编程语言:Java
    开发工具:Eclipse
    操作系统:WIN7
    2.2    系统开发目标
    根据即时通讯系统的定义,即时通讯首先要求即时、准确。为达到这一目标,服务器端和客户端就要完美配合,“协同工作”。因此聊天系统具有以下要求:
    服务器端:
    1.能够正确地、快速地启动服务器。
    2.监听指定的端口,等待客户端的连接。
    3.建立与客户端的逻辑连接,并能通知用户的其他好友。
    4.对新上线的用户更新在线用户列表。
    5.接收客户端的消息,并能准确无误地处理消息且发出消息到对应客户端。
    6.及时地反映发出本地消息和聊天消息。
    7.能够给全部用户发送系统消息。
    8.当好友断开与服务器连接时,服务器能正确地断开连接,并通知其他用户。
    客户端:
    1.能够正确地启动应用程序,并能向服务器发出连接请求。
    2.能够和指定好友发出和接收消息。
    3.能够和所有好友发出和接收消息。
    4.能够和指定好友发送和接收文件。
    5.能够和指定好友发送和接收窗口抖动。
    6.能够正确地断开与服务器的连接。
    2.3    业务需求
    即时通讯系统在消息传送中具有即时、快速且准确的特点。在C/S架构模型的系统设计中,服务器端必须正确地建立与客户端的连接并能够正确地断开;能及时地接收消息并且及时处理和发送接收到的数据;能及时地通知用户当前好友在线状况;具有处理异常数据的能力。对应的客户端必须快速地检查是否能够连接到服务器端;能正确地获得和反映当前好友在线状况;能够正常与特定好友交流;能及时地接收到服务器端的数据且及时处理数据,并能将处理结果反映给用户。
    2.4    功能需求
    1.用户注册:任何未注册的用户都可以在注册界面注册一个新的账号,之后便可以通过此账号登陆,注册时需要填写昵称、密码、头像等基本信息,注册成功后服务器会返回一个唯一的号码ID。
    2.账号登陆:使用服务器返回的号码ID以及注册时填写的密码登陆服务器。
    3.好友聊天:登陆服务器后进入群聊界面,在群聊界面点击上线好友头像选择私聊即可进行单独聊天。
    4.文件传输:好友与好友之间可以互相传送文件,在群聊界面点击好友头像选择文件传输即可进行文件的传送。
    5.窗口抖动:好友与好友之间可以互相抖动窗口,在群聊界面点击好友头像选择窗口抖动即可发送抖动引起好友注意。
  1. 上一篇:php+mysql教室及会议室预约系统的设计与实现
  2. 下一篇:php+mysql电子商务平台仓库管理子系统设计与实现
  1. 基于MATLAB的图像增强算法设计

  2. 基于Kinect的手势跟踪与识别算法设计

  3. JAVA基于安卓平台的医疗护工管理系统设计

  4. 基于核独立元分析的非线...

  5. 基于Hadoop的制造过程大数据存储平台构建

  6. 基于安卓系统的测量软件...

  7. 基于VC++的GIS矢量图形系统开发

  8. 大众媒体对公共政策制定的影响

  9. 中考体育项目与体育教学合理结合的研究

  10. 杂拟谷盗体内共生菌沃尔...

  11. 酸性水汽提装置总汽提塔设计+CAD图纸

  12. 乳业同业并购式全产业链...

  13. 当代大学生慈善意识研究+文献综述

  14. java+mysql车辆管理系统的设计+源代码

  15. 河岸冲刷和泥沙淤积的监测国内外研究现状

  16. 十二层带中心支撑钢结构...

  17. 电站锅炉暖风器设计任务书

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回