先来看看类图:
可以看到解码和编码是对应的。解码导入实现了PacketDecoder ,编码都实现了PacketEncoder。这个和我上一篇文章说的传输的基础是packet是对应的。
编码分别是转换成Buffer,byte[],ByteBuffer,对象,Packet。解码也有对应的解码。注意这里的buffer是cindy自己定义的buffer。
当然这些编码和解码为了扩展,还有chain类。PacketEncoderChain,PacketDecoderChain。
时间的过程中很少上面这些。cindy的举例hello worl用到了SerialEncoder。这个是对象的。但是这个对象没有确定具体的类,我们只能使用object的东西。
实际中我们的编码和解码一般是写在model的类中,更类似这样的:
public class Model{
private short userLiveId;
public short getUserLiveId() {
return userLiveId;
}
public void setUserLiveId(short userLiveId) {
this.userLiveId = userLiveId;
}
protected void encode(ByteBuffer buffer) {
buffer.putShort(userLiveId);
}
protected void decode(ByteBuffer buffer) throws Exception {
userLiveId = buffer.getShort();
}
也就是说,我们时间传输的是个pocket,pocket包含Buffer,我们是从这个buffer中,几个字节几个字节那样解码出对象的。
![点击查看原始大小图片](http://dl2.iteye.com/upload/attachment/0084/2384/6a00acb6-bee7-35c0-b6b0-845863d91343-thumb.png)
- 大小: 13.3 KB
分享到:
相关推荐
HDB3 ENCODE AND DECODE,详细设计与实现,参考一下下啊
js中encode、decode的应用说明.docx
Turbo lte encode decode
Video Encode and Decode GPU Support Matrix.xlsx
netty encode decode ,测试可用,内涵amf3的encode和decode,还有String的encode和decode
小巧实用,支持ANSI和UTF-8编码和译码,web编程必备.
蓝牙a2dp协议中的sbc编码 解码器,在windows下运行的工具软件,含编解码资源。 csdn积分充值也不贵,实在缺钱可以私信我要
alfred-encode-decode-workflow, 将sting编码和解码为多个变体 编码/解码( 下载 v1.8 )将字符串编码和解码为多个变体。要求Alfred应用程序 v2 。安装点击下面的下载按钮双击以导入 Alfred 2查看工作流以添加自定义...
Encode_ Decode Tools URL编码解码工具
microsoft Mpeg4 V2 Encode and Decode
base64_encode_decode.exe
DVI 1.0 encode and decode source code, write with verilog, with simulation project, synplify project and all soure code. They're have been running on xilinx spartan3A FPGA. Can be used in real project...
Encode_Decode_Tools_编码转换器 非常实用 方便!
this program is a demo to encode, decode for PDF417 bar code.
在线protobuf编码/解码工具。 进入根目录,通过以下命令启动。 bower install serve
今天小编就为大家分享一篇关于Python3字符串encode与decode的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
因此,了解 encode 和 decode 的作用非常重要。 decode 的作用是将其他编码的字符串转换成 Unicode 编码。例如,str1.decode('gb2312') 将 gb2312 编码的字符串 str1 转换成 Unicode 编码。相反,encode 的作用是将...
A toolbox to encode/decode JSON/UBJSON/MessagePack files in MATLAB/Octave JSONLab is a free and open-source JSON/UBJSON/MessagePack encoder and decoder written in the native MATLAB language. It can be...
介绍从RNN到Attention到Transformer系列中Decode-Encode(Seq2Seq) https://blog.csdn.net/qq_39707285/article/details/124726403
jpeg 编码解码,用c/c++实现,读取bmp文件,压缩成为jpeg文件,再从jpeg文件解码为bmp文件