资料内容:
一 编解码器
1.1 什么叫编解码器
在网络传输的过程中,数据都是以字节流的方式进行传递。客户端在向服务端发送数据的时候,
将业务中其他类型数据转化为字节,叫编码。服务端接收到数据为字节流,将字节流转化为原来
的格式,叫解码。统称codec。
编解码器分为两部分-编码器和解码器,编码器负责出站,解码器负责入站。
1.2 解码器
1.2.1 概述
解码器负责入站操作,那么也一定要实现ChannelInboundHandler接口,所以解码器本质 上也是
ChannelHandler。我们自定义编解码器只需要继承ByteToMessageDecoder(Netty提供抽象类,继
承 ChannelInboundHandlerAdapter),实现decode()。Netty提供一些常用的解码器实现, 开箱
即用。如下:
1 RedisDecoder Redis
2 XmlDecoder XML
3 JsonObjectDecoder json
4 HttpObjectDecoder http
Netty也提供了MessageToMessageDecoder,将种格式转化为另种格式的解码器,也提供了些 实
现,如下:
1 StringDecoder ByteBuf
2 ByteArrayDecoder ByteBuf
3 Base64Decoder ByteBufUS-ASCIIBase64ByteBuf