实现基于 C/S 模式的点对点的聊天室
完整资料进入【数字空间】查看——baidu搜索"writebug"
研究内容
基于 C/S 模式实现点对点聊天的功能,即一个服务器监听一个客户端的请求的通信。客户端与服务器可以在同一台机器上,但是客户端与服务器处理的信息以及信息处理的方式不同,分为客户端程序和服务器端程序。在此基础上,再尝试扩展多线程聊天和安卓系统或者微信小程序。最终代码会放在 GitHub 上。
技术现状
现在的聊天室有用 WebSocket,CGI 技术,但是一个简单的用 Java socket 实现的点对点聊天系统比较实用稳定,基于 TCP 的服务器 socket 和客户端 socket 步骤是建立连接,处理数据,关闭连接。
技术方案概述
1. 编程环境
工具:Myeclipse(Eclipse,Android SDK)
语言:Java
2. 设计原则
基于 c/s 架构,实现的是服务器和客户端的点对点的连接,点对点传输数据。客户端之间不是直接连接和通信,而是通过与服务器连接,通过服务器转发信息,实现客户端之间的通讯。
3. 设计要点
本点对点聊天系统设计要点主要有:
群聊即客户端发送消息给服务器,服务器转发给在线的所有客户端,实现群聊模式;
私聊即客户端发送消息给服务器,服务器识别所要发送的目标人,然后判断他/她是否在线,若在线将数据发送给目标人 ,若不在线,数据记录保留在服务器数据库中,等待目标人上线,获取来自数据库的属于他的消息记录;
客户端之间可以发送文字和表情图片。通过将相关信息数据发送给服务器,再经过字节流等转换,服务端收到消息,再转发给目标人,并进行流的包装,最终显示在界面聊天内容中;
设计了欢迎界面,登录界面,登录界面包括了注册和登录,具体内容见如下方案设计;
设计了信息列表,分为好友和群聊,可以查找好友,显示头像,通过点击头像进入聊天界面;





