‘liusuyi’
2023-08-10 a0a1b5499e458c7b0a2a091608718df9aef448c7
src/main/java/com/ard/utils/tcp/ClientInitialize.java
@@ -17,6 +17,9 @@
import io.netty.channel.socket.nio.NioSocketChannel;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
@@ -34,7 +37,8 @@
 */
@Component
@Slf4j(topic = "netty")
public class ClientInitialize {
@Order(2)
public class ClientInitialize implements ApplicationRunner {
    @Resource
    IArdEquipRadarService ardEquipRadarService;
@@ -78,7 +82,7 @@
                                }
                            });
                        }
                        Thread.sleep(3000);
                        Thread.sleep(10000);
                    } catch (Exception e) {
                        log.error("Netty初始化配置监听地址出现异常");
                        e.printStackTrace();
@@ -100,14 +104,14 @@
        // 异步连接tcp服务端
        bootstrap.remoteAddress(host, port).connect().addListener((ChannelFuture futureListener) -> {
            if (!futureListener.isSuccess()) {
                log.error(host + ":" + port + "雷达TCP服务端连接失败");
                log.error("雷达【" + host + ":" + port + "】连接失败");
                futureListener.channel().close();
                // 连接失败信息插入Set
                falseConnectSet.add(ardEquipRadar);
                // 连接失败信息从map移除
                tureConnectMap.remove(futureListener.channel().id());
            } else {
                log.info(host + ":" + port + "雷达TCP服务端连接成功");
                log.info("雷达【" + host + ":" + port + "】连接成功");
                // 连接成功信息从Set拔除
                falseConnectSet.remove(ardEquipRadar);
                // 连接成功信息写入map
@@ -119,8 +123,8 @@
    /**
     * 初始化方法
     */
    @PostConstruct
    public void initialize() {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        if (!tcpClientEnable) {
            return;
        }
@@ -129,7 +133,7 @@
        for (ArdEquipRadar ardEquipRadar : ardEquipRadars) {
            String host = ardEquipRadar.getIp();
            Integer port = Integer.valueOf(ardEquipRadar.getPort());
            log.info("TCP客户端尝试连接:" + host + ":" + port);
            log.debug("TCP客户端尝试连接:" + host + ":" + port);
            connectServer(ardEquipRadar);//连接每一个雷达服务
        }
    }