NIO流行框架 Mina 自定义编解码器

1.自定义的编解码工厂:


要实现编解码工厂就要实现ProtocolCodecFactory这个接口.






2.实现自定义编解码器:


1)实现自定义解码器:实现ProtocolDecoder接口


2)实现自动自定义的编码器:实现ProtocolEncoder接口






3.为什么要使用自定义的编码器:


因为中往往不是通过一个字符串就可以传输所有的信息。我们传输的是自定义的协议包。并且能在应用程序和网络通信中存在对象和二进制流之间转化关系。所以我们需要结合业务编写自定义的编解码器.


 


4.常用的自定义协议的方法


1)定长的方式.   Aa,bb,cc,ok,no等这样的通信方式.


2)定界符.helloworld|wacthmen|.....|...  通过特殊的符号来区别消息.  这样方式会出现粘包,半包等现象.


Hello     world|watchemen.  带来了不正确消息,这样就应该丢弃数据.


3)自定义协议包


 包头


 包体


 包头:数据包的版本号,以及整个数据包(包头+包体) 长度
 包体:实际数据.

你可能感兴趣的:(NIO流行框架 Mina 自定义编解码器)