解码器的功能正好相反。Netty 提供了一组类,用于帮助你编写具有以下功能的编码器:
- 将消息编码为字节;MessageToByteEncoder
- 将消息编码为消息:MessageToMessageEncoder
,T 代表源数据的类型 将消息编码为字节 MessageToByteEncoder
encode(ChannelHandlerContext ctx,I msg,ByteBuf out)
encode()方法是你需要实现的唯一抽象方法。它被调用时将会传入要被该类编码为ByteBuf 的出站消息(类型为 I 的)。该 ByteBuf 随后将会被转发给 ChannelPipeline 中的下一个 ChannelOutboundHandler将消息编码为消息 MessageToMessageEncoder
encode(ChannelHandlerContext ctx,I msg,List