Netty4.0中LengthFieldPrepender编码器学习心得(二)
本人这段时间都在持续学习Netty的相关知识,主要是依据李林峰的《Netty权威指南-V2》。
昨天刚整理了[http://blog.csdn.net/xxxxmm007/article/details/50667923]解码器LengthFieldBasedFrameDecoder的相关学习知识。今天整理其对应的编码器原理知识。
从昨天的链接:“Netty作为服务端、java.net.Socket作为客户端”章节中发现,LengthFieldBasedFrameDecoder解码时,计算每个数据包的整体长度时,多增加了一部分。为什么呢?我们可从编码器中得到答案。
方面描述,数据包的结构如下:
|–Length(int)–|–Txt(bytes)–|
1-编码器初始化
打开LengthFieldPrepender的源码,找到对应的构造函数:
///实例化
new LengthFieldPrepender(4, false);
*上面的第2个参数若为true时,则编码时会将