资源简介
利用flash请求模仿websocket协议建立连接。使websocket兼容IE678,部署到tomcat7,运行index.jsp即可。完美运行websocket。
代码片段和文件信息
package com.server;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import javax.servlet.http.HttpServletRequest;
import org.apache.catalina.websocket.MessageInbound;
import org.apache.catalina.websocket.StreamInbound;
import org.apache.catalina.websocket.WebSocketServlet;
import org.apache.catalina.websocket.WsOutbound;
import com.talk.TalkManager;
public class ServerSocket extends WebSocketServlet {
private static final long serialVersionUID = -4853540828121130946L;
public static Map> clients = new ConcurrentHashMap>();
private String user_id ;
@Override
protected StreamInbound createWebSocketInbound(String arg0 HttpServletRequest request) {
user_id = request.getParameter( “user_id“ );
return new MyMessageInbound();
}
public class MyMessageInbound extends MessageInbound {
public WsOutbound myoutbound;
public String userId = user_id ;
@Override
public void onOpen(WsOutbound outbound) {
try {
System.out.println(“Open>>>>>>用户ID为“ + userId + “建立连接“ );
this.myoutbound = outbound;
if (clients.containsKey(userId)){
List list = clients.get(userId);
list.add(this);
clients.put(userId list);
}else{
List list = new ArrayList();
list.add(this);
clients.put(userId list);
}
outbound.writeTextMessage(CharBuffer.wrap(“Hello!“));
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onTextMessage(CharBuffer cb) throws IOException {
System.out.println(“服务器收到消息 : “ + cb);
TalkManager.broadcast(cb.toString());
}
@Override
public void onClose(int status) {
if( status == 1002 || status == 1000)
{
System.out.println(“Close>>>>>>用户ID为“ + userId + “断开连接“ );
List list = clients.get(userId);
list.remove(this);
}
}
@Override
public void onBinaryMessage(ByteBuffer bb) throws IOException {
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-02-24 17:08 webchat\
文件 708 2017-02-24 17:08 webchat\.classpath
目录 0 2017-02-25 17:59 webchat\.myeclipse\
文件 294 2017-02-24 17:08 webchat\.myme
文件 1750 2017-02-24 17:34 webchat\.project
目录 0 2017-02-24 17:08 webchat\.settings\
文件 500 2017-02-24 17:08 webchat\.settings\.jsdtscope
文件 598 2017-02-24 17:08 webchat\.settings\org.eclipse.jdt.core.prefs
文件 457 2017-02-24 17:08 webchat\.settings\org.eclipse.wst.common.component
文件 252 2017-02-24 17:08 webchat\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2017-02-24 17:08 webchat\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2017-02-24 17:08 webchat\.settings\org.eclipse.wst.jsdt.ui.superType.name
目录 0 2017-02-25 16:12 webchat\WebRoot\
目录 0 2017-02-24 17:08 webchat\WebRoot\me
文件 36 2017-02-24 17:08 webchat\WebRoot\me
目录 0 2017-02-24 17:08 webchat\WebRoot\WEB-INF\
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\server\
文件 2918 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\server\ServerSocket$MyMessageInbound.class
文件 1362 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\server\ServerSocket.class
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\servlet\
文件 1052 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\servlet\InitServers.class
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\talk\
文件 2239 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\talk\TalkManager.class
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\thread\
文件 1373 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\thread\PolicyServer.class
文件 2174 2017-02-25 17:41 webchat\WebRoot\WEB-INF\classes\com\thread\PolicyThread.class
目录 0 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\utils\
文件 1853 2017-02-25 17:28 webchat\WebRoot\WEB-INF\classes\com\utils\SocketUtil.class
目录 0 2017-02-24 17:32 webchat\WebRoot\WEB-INF\lib\
............此处省略23个文件信息
相关资源
- android听筒和扬声器切换,兼容5.0以上
- Android-CameraView是一个可以轻松捕捉图
- IEC104规约,Java开发主站程序
- 一款Android浏览器源码 功能有:扫描二
- Android圆形相机预览窗口,圆形Surfac
- android视频播放自定义控件
- Android studio 的videoView播放网络视频d
- 节日短信送祝福(UI实现)
- Android 仿美团网探索ListView的A-Z字母排
- HttpClient方式实现Android平台与Apache服务
- Android读取doc(支持图片) 转html 并保
- WrapRecyclerView-可以添加头部和尾部的
- UniWebView 3.12.1
- 在Android中全屏显示GIF图片演示代码
- AP6255-AP6256固件及android linux版本兼容
- 电影评论系统
- Best HTTP2 (2.2.0).unitypackage
- android腾讯X5内核demo
- AChartEngine应用之PieChart饼图
- httpclient4.2.5 jar 还有关于他的依赖包
- 基于Kociemba算法的魔法还原程序
- Android下使用VideoView配合MediaController播
- android 自定义listview实现仿微信/QQ设置
- android TextView 支持CSS样式
- 解决React-Native的WebView不支持Android选择
- android 下 rtspServer 流媒体视频播放
- Android下拉刷新上拉加载效果功能
- java ee 6 libraries jar包
- Android 仿今日头条首页标题栏效果
- com.teamviewer.quicksupport.addon.htc.apk
评论
共有 条评论