package com.zksy.manhole.config; import io.netty.channel.EventLoopGroup; import io.netty.channel.socket.SocketChannel; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; @Slf4j @Component public class NettyServer { private static Logger logger = LoggerFactory.getLogger(NettyServer.class); // 保存客户端连接的通道引用 public static SocketChannel sc = null; public static EventLoopGroup acceptor; public static EventLoopGroup worker; @Autowired private NettyServerThread nettyServerThread; @PostConstruct public void init() { new Thread(() -> nettyServerThread.startServer()).start(); System.out.println("nettyServer启动"); logger.info("nettyServer启动"); } @PreDestroy public void exit() { if (acceptor != null) { acceptor.shutdownGracefully(); } if (worker != null) { worker.shutdownGracefully(); } } }