使用Tomcat8实现WebSocket的简单例子
来源:互联网 发布:mac自动刷新功能 编辑:程序博客网 时间:2024/06/06 09:54
运行环境: MyEclipse 2014+Tomcat 8
建立Web Project工程如下图所示:
如果 Add New Runtime处添加的是Tomcat 8的话就不需要导入新的Jar包了。
编写WebSocket的Java程序
@ServerEndpoint("/java/socket") //使用注解建立连接点
public class Progress
{
@OnMessage //接受客户端消息
public void onMessage(String msg, Session session) throws Exception
{
System.out.println("msg : " + msg);
System.out.println(session.getQueryString());
String tmp = "让我们定义一个 Tomcat websocket服务器端";
System.out.println("send msg : " + tmp);
session.getBasicRemote().sendText(tmp); //发送信息到客户端
session.close(); //关闭连接点
}
@OnOpen //成功连接时执行此代码
public void onOpen()
{
System.out.println("------------onOpen------------");
}
@OnClose //连接关闭时执行
public void onClose()
{
System.out.println("------------onClose------------");
}
}
JSP代码如下
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<button onclick="start()">测试</button>
<div id="messages"></div>
<script type="text/javascript">
var webSocket = null;
function init()
{
webSocket = new WebSocket('ws://127.0.0.1:8082/WebSocketAndTomcat/java/socket'); //建立连接点 WebSocketAndTomcat要换成自己的项目名
webSocket.onerror = function(event)
{
onError(event);
};
webSocket.onopen = function(event)
{
onOpen(event);
};
webSocket.onmessage = function(event) //接受客户端消息
{
onMessage(event);
};
}
function onMessage(event)
{
document.getElementById('messages').innerHTML += '<br />' + event.data;
}
function onOpen(event)
{
document.getElementById('messages').innerHTML = 'Connection established';
webSocket.send("ds"); //发送消息给服务器端
}
function onError(event)
{
alert(event.data);
}
function start()
{
init();
}
</script>
</body>
</html>
这个例子很简单,如果您刚接触到WebSocket技术,可以用来入门。
- 使用Tomcat8实现WebSocket的简单例子
- 简单的WebSocket例子
- spring+tomcat8实现websocket
- 在Java7与Tomcat8环境下使用WebSocket实现聊天的示例
- iOS使用webSocket的简单实现
- android 使用websocket 实现简单的聊天。
- 简单的websocket实现
- Websocket客户端的实现例子
- 使用tomcat8.0.36实现的websocket技术,实现向单个以及全部用户实时推送消息的功能
- java后端实现websocket简单例子
- WebSocket的简单使用
- WebSocket WebSocket的简单用法 WebSocket的使用
- cocos2d WebSocket简单例子
- websocket实现简单的聊天室
- 使用Vert.x实现一个简单的websocket聊天室
- HTML5 WebSocket的使用及例子
- HTML5 WebSocket的使用及例子
- eclipse和tomcat8的websocket入门篇
- 耐心的mentor
- 修改deploy location
- 投票系统(带柱状图)
- C++
- 素数对猜想
- 使用Tomcat8实现WebSocket的简单例子
- oc消息转发机制
- 如何让TabHost选项卡显示图片
- Radial basis function(径向基函数->(高斯核函数))
- ibatis源码学习(一)整体设计和核心流程
- CodeTyphon32中自带例子源码:另一个画箭头、线及形状的例子
- 0601 生成验证码
- Android日志打印与处理 UncaughtExceptionHandler 提交服务器
- 使用 IntelliJ IDEA 搭建go语言开发环境,亲测可用