netty decode
extends LengthFieldBasedFrameDecoder 协议解码器
LengthFieldBasedFrameDecoder是netty解决拆包粘包问题的一个重要的类
public LengthFieldBasedFrameDecoder(
int maxFrameLength, //1024*1024*20 最大帧长度。也就是可以接收的数据的最大长度。如果超过,此次数据会被丢弃
int lengthFieldOffset, //0 长度域偏移。就是说数据开始的几个字节可能不是表示数据长度,需要后移几个字节才是长度域。
int lengthFieldLength, //4 长度域字节数。用几个字节来表示数据长度。
int lengthAdjustment, //0 数据长度修正。因为长度域指定的长度可以使header+body的整个长度,也可以只是body的长度。如果表示header+body的整个长度,那么我们需要修正数据长度。
int initialBytesToStrip // 4 跳过的字节数。如果你需要接收header+body的所有数据,此值就是0,如果你只想接收body数据,那么需要跳过header所占用的字节数。
)
extends MessageToByteEncoder 协议编码器