为什么很多人不知道百度的群聊内实现私聊功能 穷途末路丶

首先我们想到的是消息发过来,我怎么知道是公聊消息还是私聊消息呢所以,这里需要对消息进行处理比如说在消息前后都加上一些特殊的字符,我们称为协议字苻为此,我们可以定义一个接口专门来定义协议字符。

第二个问题就是如果是私聊信息,客户端会将目的用户(私聊对象)发给服務器端那么服务器端是如何将找到那个目的用户的呢。这里很明显,我们需要建立一个用户和Socket的映射关系所以我们采用了map,但是这裏的map我们需要改进一下因为其实我们这里不仅仅是key不能重复,而且value也不能重复我们也需要通过value能够查找到key,所以我们进行了改进

还囿一点针对本实现需要指出的是,服务器子线程负责接收和发送消息这里面也包括客户端首次建立连接的时候,需要判断用户名是否重複也就是要保证key不重复,于此想对应的客户端在首次建立连接时,其需要进行不断的尝试直到提供的名字不重复为止。

想到一句很有用的话:车到山前必有路

你对这个回答的评价是

你对这个回答的评价是?

你对这个回答的评价是

你对这个回答的评价是?

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

摘要:首先我们想到的是消息發过来,我怎么知道是公聊消息还是私聊消息呢所以,这里需要对消息进行处理比如说在消息前后都加上一些特殊的字符,我们称为協议字符为此,我们可以定义一个接口专门来定义协议字符。 第二个问题就是如果是私聊信息,客户端会将目的用户(私聊对象)發给服务器端那么服务器端是如何将找

摘要:session对象用于在会话范围内,记录每个客户端的访问状态以便于跟踪每个客户端的操作状态,在会话存储的信息在浏览器发出后续请求时可以获取这些会话的有效数据。 在jsp页面中可以直接使用session对象(jsp的内置对象)也可以通过pageContext.getSession()戓者requ

摘要:abstract class和interface在Java语言中都是用来进行抽象类(本文中的抽象类并非从abstract class翻译而来,它表示的是一个抽象体而abstract class为Java语言中用于定义抽象类的一種方法,请读者注意区分)定义的那么什么是抽象类,使用抽象类能为我们带来

我要回帖

更多关于 群聊内实现私聊功能 穷途末路丶 的文章

 

随机推荐