Netty 4.0.13客户端/服务器发送/接收bytebuffer数据包的示例

Netty 4.0.13客户端/服务器发送/接收bytebuffer数据包的示例,netty,bytebuffer,encoder,Netty,Bytebuffer,Encoder,我生成一个ByteBuffer对象: (4字节为00)+(4字节为gson数据长度)+(一些字节为gson字符串格式) 如何将此数据发送到服务器部件? 我需要在代码中使用任何编码器吗?或者没有它也可以工作 public class ClientSocketInitializer extends ChannelInitializer<SocketChannel> { private static final ObjectEncoder ENCODER = new Object

我生成一个ByteBuffer对象:

(4字节为00)+(4字节为gson数据长度)+(一些字节为gson字符串格式)

如何将此数据发送到服务器部件? 我需要在代码中使用任何编码器吗?或者没有它也可以工作

public class ClientSocketInitializer extends ChannelInitializer<SocketChannel> {

    private static final ObjectEncoder ENCODER = new ObjectEncoder();

    @Override
    public void initChannel(SocketChannel ch) throws Exception {
        ChannelPipeline pipeline = ch.pipeline();
        //pipeline.addLast("encoder", ENCODER);
        pipeline.addLast("handler", new ClientSocketHandler());
    }
}
公共类ClientSocketInitializer扩展了ChannelInitializer{
私有静态最终ObjectEncoder编码器=新ObjectEncoder();
@凌驾
public void initChannel(SocketChannel ch)引发异常{
ChannelPipeline=通道管道();
//pipeline.addLast(“编码器”,编码器);
addLast(“handler”,newclientsockethandler());
}
}
在此变体中,存在从客户端到服务器的连接,但没有传输的数据(0字节输入/输出) 如果我取消注释注释行,则存在数据通信。但我不需要使用任何编码器。我有一张准备好的便签。请帮我解决这个问题。

只需使用:

channel.writeAndFlush(Unpooled.wrappedBuffer(yourByteBuffer));

你好,诺曼!也许我必须用Bytebuff来代替老ByteBuffer?