websocket 的简单应用

今天我试着用websocket 搭建了一个简单的 网页即时通讯,记录一下步骤

引入必须包,我用的是maven

		<dependency>
            <groupId>javax.websocket</groupId>
            <artifactId>javax.websocket-api</artifactId>
            <version>1.1</version>
            <scope>provided</scope>
        </dependency>

创建一个获取session 的类

import javax.servlet.http.HttpSession;
import javax.websocket.HandshakeResponse;
import javax.websocket.server.HandshakeRequest;
import javax.websocket.server.ServerEndpointConfig;
import javax.websocket.server.ServerEndpointConfig.Configurator;

public class GetHttpSessionConfigurator extends Configurator {
	@Override
	public void modifyHandshake(ServerEndpointConfig sec, HandshakeRequest request
			, HandshakeResponse response) {
		// TODO Auto-generated method stub
        HttpSession httpSession=(HttpSession) request.getHttpSession();
        sec.getUserProperties().put(HttpSession.class.getName(),httpSession);
	}
}

创建一个 监听类

import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
import javax.servlet.http.HttpServletRequest;

public class RequestListener implements ServletRequestListener {

	@Override
	public void requestDestroyed(ServletRequestEvent sre) {
		// TODO Auto-generated method stub

	}

	@Override
	public void requestInitialized(ServletRequestEvent sre) {
		// TODO Auto-generated method stub
		((HttpServletRequest) sre.getServletRequest()).getSession();
	}

}
在web.xml 配置监听路径
  <listener>
        <listener-class>包路径.RequestListener</listener-class>
 </listener>

服务层

import java.io.IOException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;
import javax.websocket.EndpointConfig;
import javax.websocket.On
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用Android开发时,可以使用Java语言来实现WebSocket功能。WebSocket是一种在客户端和服务器之间进行双向通信的协议,它可以实现实时数据传输和更新。 下面是一个简单的Android Java WebSocket的例子: 1. 首先,在Android项目中添加WebSocket库的依赖。可以使用OkHttp库来实现WebSocket功能,添加以下依赖到项目的build.gradle文件中: ```groovy implementation 'com.squareup.okhttp3:okhttp:4.9.0' ``` 2. 在Android应用程序中创建一个WebSocket客户端。可以在Activity或Fragment中创建一个WebSocket对象,并实现WebSocketListener来处理WebSocket事件。以下是一个简单的例子: ```java import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import okhttp3.WebSocket; import okhttp3.WebSocketListener; import okio.ByteString; public class MyWebSocketClient extends WebSocketListener { private WebSocket webSocket; public void start() { OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url("ws://your-websocket-url").build(); webSocket = client.newWebSocket(request, this); } @Override public void onOpen(WebSocket webSocket, Response response) { // 连接成功时的处理逻辑 } @Override public void onMessage(WebSocket webSocket, String text) { // 接收到消息时的处理逻辑 } @Override public void onClosing(WebSocket webSocket, int code, String reason) { // 关闭连接时的处理逻辑 } @Override public void onFailure(WebSocket webSocket, Throwable t, Response response) { // 连接失败时的处理逻辑 } public void sendMessage(String message) { webSocket.send(message); } public void closeConnection() { webSocket.close(1000, "Closing connection"); } } ``` 3. 在需要使用WebSocket的地方,创建一个MyWebSocketClient对象并调用start()方法来建立连接。可以使用sendMessage()方法发送消息,使用closeConnection()方法关闭连接。 以上是一个简单的Android Java WebSocket的例子。你可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值