netty搭建TCP服务器过程中一些入门常见问题记录

1.客户端第一次连接能进入到handler的方法中,但是一旦这个客户端关闭了连接,那么重新连接的时候就无法再进入到server的handler中了,需要重启server之后才能再次进入。这时候,可以看一下设置handler的方式

原代码:

serverBootstrap.childHandler(new MsgHandler());

修改之后:

serverBootstrap.childHandler(new ChannelInitializer<SocketChannel>() {
                    @Override
                    protected void initChannel(SocketChannel socketChannel) throws Exception {
                        socketChannel.pipeline().addLast(new MsgHandler());
                    }
                });

 

2.服务器端向客户端发送数据,客户端接收不到。这时候,可以确认一下ctx.write()方法中传递的参数是不是ByteBuf类型

原代码:

ctx.writeAndFlush(data);

修改之后:

ByteBuf responseBuf=Unpooled.copiedBuffer(data);
ctx.writeAndFlush(responseBuf);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值