Springboot 통합 웹 소켓 패키지 자바 클 라 이언 트, 원 격 웹 소켓 서버 정보 수신
4208 단어 WebSocket
이것 은 제 가 쓴 자바 클 라 이언 트 입 니 다. 이미 접속 되 었 습 니 다. 인증 이 가능 합 니 다.
1. pom 파일 설정 jar 패키지
org.springframework.boot
spring-boot-starter-websocket
org.java-websocket
Java-WebSocket
1.4.0
2. 자바 websocket 클 라 이언 트 도구 류 만 들 기
package com.netposa.gat.platform.constant;
import lombok.extern.slf4j.Slf4j;
import org.java_websocket.client.WebSocketClient;
import org.java_websocket.drafts.Draft_6455;
import org.java_websocket.handshake.ServerHandshake;
import org.springframework.stereotype.Component;
import java.net.URI;
import java.net.URISyntaxException;
@Slf4j
@Component
public class JavaWebSocketClient {
/**
*
* @param uri
* @return
*/
public WebSocketClient getClient(String uri){
try {
//
WebSocketClient client = new WebSocketClient(new URI(uri),new Draft_6455()) {
/**
*
* @param serverHandshake
*/
@Override
public void onOpen(ServerHandshake serverHandshake) {
log.info("=== ===");
}
/**
*
* @param s
*/
@Override
public void onMessage(String s) {
log.info("==== ===" + s);
}
/**
*
* @param i
* @param s
* @param b
*/
@Override
public void onClose(int i, String s, boolean b) {
log.info(" :::" + "i = " + i + ":::s = " + s +":::b = " + b);
}
/**
*
* @param e
*/
@Override
public void onError(Exception e) {
log.error("==== ====" + e.getMessage());
}
};
//
client.connect();
// ,0 1
while(client.getReadyState().ordinal() == 0){
try {
Thread.sleep(200);
}catch (Exception e){
log.warn(" , ");
}
log.info(" .......");
}
// 0 , 1
if (client.getReadyState().ordinal() == 1){
return client;
}
}catch (URISyntaxException e){
log.error(e.getMessage());
}
return null;
}
}
3. websocket 을 연결 하 는 인터페이스 와 인터페이스 실현 류 를 만 들 고 구체 적 인 업무 논리 처 리 를 한다.
package com.netposa.gat.service.impl;
import com.alibaba.fastjson.JSON;
import com.netposa.gat.platform.constant.JavaWebSocketClient;
import com.netposa.gat.service.WebSocketClientService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import org.java_websocket.client.WebSocketClient;
@Service
@Component
@Slf4j
public class WebSocketClientServiceImpl implements WebSocketClientService {
@Autowired
private JavaWebSocketClient javaClient;
@Override
public void getRealTimeInformation() {
String url = "ws://15.137.17.25:9000/api/cn/v1.0/ws/alarm/face/FCDE5939596F46A08846B8B48EA0B5BF";
WebSocketClient client = this.javaClient.getClient(url);
}
}
4、
그 중 자바 웹 소켓 클 라 이언 트 의
public void onMessage(String s) {
log.info(" :::" + s);
}
서버 에서 보 내 온 메 시 지 를 받 는 거 예요.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebSocket+spring 예제 demo 자세히 보기(sockJs 라이브러리 사용)예를 들어 Canvas, 로컬 저장소, 멀티미디어 프로그래밍 인터페이스, WebSocket 등이다.이 중'웹의 TCP'라고 불리는 웹소켓은 특히 개발자들의 주의를 끈다.WebSocket의 등장으로 브라우저가 Sock...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.