vince
2024-04-26 b1c572949997a5d82d9b609163ff280a1c49627d
src/main/java/com/fzzy/protocol/wujia/client/ClientHandler.java
@@ -15,6 +15,7 @@
    private AnalysisService analysisService;
    private static String msgStr = "";
    @Override
    public void channelActive(ChannelHandlerContext ctx) {
        InetSocketAddress socketAddress = (InetSocketAddress) ctx.channel()
@@ -31,7 +32,7 @@
        InetSocketAddress socketAddress = (InetSocketAddress) ctx.channel().remoteAddress();
        log.info("连接终端掉线,IP={},port={}", socketAddress.getAddress(), socketAddress.getPort());
        //ClientEngine.defaultChannel = null;
    }
@@ -44,16 +45,25 @@
        String strMsg = BytesUtil.bytesToString(bytes);
        log.info("终端返回信息,IP={},port={},msg={}", socketAddress.getAddress(), socketAddress.getPort(), strMsg);
        msgStr+= strMsg;
        if (null == analysisService) {
            analysisService = SpringUtil.getBean(AnalysisService.class);
        if(msgStr.endsWith("AABBCC")){
            log.info("消息接收完整开始解析,IP={},port={},msg={}", socketAddress.getAddress(), socketAddress.getPort(), msgStr);
            if (null == analysisService) {
                analysisService = SpringUtil.getBean(AnalysisService.class);
            }
            try{
                analysisService.analysis(socketAddress.getAddress(), socketAddress.getPort(), msgStr);
            }catch (Exception e){
                log.error(e.getMessage(),e);
            }
            msgStr = "";
        }else{
            log.info("消息不完整,等待消息完整,IP={},port={},msg={}", socketAddress.getAddress(), socketAddress.getPort(), strMsg);
        }
       try{
           analysisService.analysis(socketAddress.getAddress(), socketAddress.getPort(), strMsg);
       }catch (Exception e){
           log.error(e.getMessage(),e);
       }
    }