我只是上传一下代码,做一下代码笔记。
我看了那位博主的博客后,我大概觉得有以下思路:
- 首先是导入依赖,用了HTML5的一个 websocket 功能:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
- 接着是添加配制 WebSocketConfig.java
package com.example.java.webstock.demo.configWeb;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.server.standard.ServerEndpointExporter;
@Configuration
public class WebSocketConfig {
@Bean
public ServerEndpointExporter serverEndpointExporter(){
return new ServerEndpointExporter();
}
}
package com.example.java.webstock.demo.configServer;
import org.springframework.stereotype.Component;
import javax.websocket.*;
import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
import java.io.IOException;
@Component
@ServerEndpoint("/websocket/{sid}")
public class WebSocketServerController {
@OnMessage
public void onMessage(Session session, String message){
try {
session.getBasicRemote().sendText(message);
}catch (IOException e){
e.printStackTrace();
}
}
@OnOpen
public void onOpen(@PathParam("sid") String sid){
System.out.println("Client connected");
}
@OnClose
public void onClose(){
System.out.println("Connection closed");
}
@OnError
public void OnError(Throwable error){
System.out.println("Connection error");
}
}
<!DOCTYPE html>
<html>