From 91bbc719126310f09031e55967c059c0a01f20b1 Mon Sep 17 00:00:00 2001
From: zyy3 <zyy3@zy.com>
Date: Wed, 05 Nov 2025 18:50:49 +0800
Subject: [PATCH] 1

---
 trading-order-huobi/src/main/java/com/yami/trading/huobi/jsws/WebSocketClientBeanConfig.java |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/trading-order-huobi/src/main/java/com/yami/trading/huobi/jsws/WebSocketClientBeanConfig.java b/trading-order-huobi/src/main/java/com/yami/trading/huobi/jsws/WebSocketClientBeanConfig.java
index c105d73..4319b2a 100644
--- a/trading-order-huobi/src/main/java/com/yami/trading/huobi/jsws/WebSocketClientBeanConfig.java
+++ b/trading-order-huobi/src/main/java/com/yami/trading/huobi/jsws/WebSocketClientBeanConfig.java
@@ -4,6 +4,8 @@
 import com.yami.trading.huobi.websocket.constant.enums.EStockType;
 import lombok.extern.slf4j.Slf4j;
 import org.java_websocket.client.WebSocketClient;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
 import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Component;
 
@@ -15,13 +17,22 @@
 @Component
 public class WebSocketClientBeanConfig {
 
+    // 注入Spring上下文,用于获取原型Bean
+    @Autowired
+    private ApplicationContext applicationContext;
 
     @Bean
     public Map<String, WebSocketClient> websocketRunClientMap() {
 
         Map<String, WebSocketClient> retMap = new HashMap<>(1);
         try {
-            WebsocketRunClient websocketRunClient = new WebsocketRunClient(new URI(EStockType.US.getWsUrl()), EStockType.US);
+            // 关键:通过Spring上下文获取WebsocketRunClient实例(而非直接new)
+            // 传入参数创建实例(需配合原型作用域)
+            WebsocketRunClient websocketRunClient = applicationContext.getBean(
+                    WebsocketRunClient.class,
+                    new URI(EStockType.US.getWsUrl()),  // 第一个参数:serverUri
+                    EStockType.US                       // 第二个参数:eStockType
+            );
             websocketRunClient.connect();
             websocketRunClient.setConnectionLostTimeout(0);
             startHeartbeatThread(websocketRunClient);

--
Gitblit v1.9.3