Jute 序列化 反序列化
来看一个jute序列化,反序列化的例子
首先创建一个实例
public class MockReqHeader implements Record {private long sessionId;private String type;public MockReqHeader() {}public MockReqHeader(long sessionId, String type) {this.sessionId = sessionId;this.type = type;}//... get set method@Overridepublic void serialize(OutputArchive outputArchive, String s) throws IOException {outputArchive.startRecord(this, s);outputArchive.writeLong(sessionId, "sessionId");outputArchive.writeString(type, "type");outputArchive.endRecord(this, s);}@Overridepublic void deserialize(InputArchive inputArchive, String s) throws IOException {inputArchive.startRecord(s);sessionId = inputArchive.readLong("sessionId");type = inputArchive.readString("type");inputArchive.endRecord(s);}
}
上面这个类反应了jute的序列化,反序列。大致有几个点需要注意下:
- 实例类实现了Record接口的serialize、deserialize的方法
- 构建一个序列化器OutputArchive
- 序列化
- 反序列化
运行一下看看
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();BinaryOutputArchive binaryOutputArchive = BinaryOutputArchive.getArchive(byteArrayOutputStream);new MockReqHeader(666, "ok").serialize(binaryOutputArchive, "header");//这里通常是网络传输ByteBuffer byteBuffer = ByteBuffer.wrap(byteArrayOutputStream.toByteArray());//反序列化ByteBufferInputStream byteBufferInputStream = new ByteBufferInputStream(byteBuffer);BinaryInputArchive binaryInputArchive = BinaryInputArchive.getArchive(byteBufferInputStream);MockReqHeader header = new MockReqHeader();header.deserialize(binaryInputArchive, "header");byteBufferInputStream.close();byteArrayOutputStream.close();
Jute 序列化 反序列化相关推荐
- 用 XStream 序列化/反序列化 XML 为 Java 对象(实例)
用 XStream 序列化/反序列化 XML 为 Java 对象(实例) Posted on 2007-06-05 19:06 Stephen Wong 阅读(1224) 评论(0) 编辑 收藏 网 ...
- Redis Template使用append方法不起作用的解决办法以及序列化/反序列化的解释
今天使用Redis Template进行测试发现的问题, 遇到这个错 org.springframework.data.redis.serializer.SerializationException: ...
- 序列化反序列化api(入门级)
定义: java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象的过程. 为什么字符串通常也会进行序列化? 对象需要进行序列化的原因:保证对象的状态不变 ...
- 敏捷中gwt含义_在GWT中序列化/反序列化Json
敏捷中gwt含义 JSON和GWT 最近, GWT用户小组中进行了有趣的讨论 ,涉及在客户端对JSON进行序列化/反序列化的最佳实践. 这篇文章旨在突出其重点. 到目前为止,在GWT中有三种将对象转换 ...
- 在GWT中序列化/反序列化Json
JSON和GWT 最近, GWT用户小组中进行了有趣的讨论 ,涉及在客户端对JSON进行序列化/反序列化的最佳实践. 这篇文章旨在突出其重点. 到目前为止,在GWT中有三种将对象转换为JSON并从客户 ...
- Java 序列化反序列化框架比较
文章目录 一.简介 二.序列化框架 1.JDK 2.XML序列化 3.JSON序列化 4.Hessian 5.Avro序列化 6.Kyro序列化 7.Protostuff 三.序列化框架对比测试 1. ...
- 高效的序列化/反序列化数据方式 Protobuf
高效的序列化/反序列化数据方式 Protobuf github地址 目录 protocolBuffers 序列化 Int32 String Map slice 序列化小结 protocolBuffer ...
- 10.8-全栈Java笔记:序列化/反序列化的步骤和实例
本节我们详细讲解10.3节中提到的序列化和反序列化操作. 序列化和反序列化是什么 当两个进程远程通信时,彼此可以发送各种类型的数据. 无论是何种类型的数据,都会以二进制序列的形式在网络上传送.比如,我 ...
- 【Java】用Jackson进行JSON序列化/反序列化操作
Java类和JSON Speaker类: import java.util.ArrayList; import java.util.Arrays; import java.util.List;publ ...
最新文章
- 用 Flask 来写个轻博客 (13) — M(V)C_WTForms 服务端表单检验
- mysql中case when then的用法
- Android Studio的gradle项目构建
- jpa mysql查找_jpa查找数据库最新一条消息
- 添加游戏到游戏浏览器中的小工具
- linux的cimserver是什么服务,openpegasus的启动方式(即cimserver的启动方式)
- 计算机导航医学应用,【2016年】计算机导航在全膝关节置换中的应用技术及进展【临床医学论文】.doc...
- Java好学吗?Java能做什么?如何快速入门Java?
- 下划线_Excel添加下划线的快捷键,下划线颜色设置
- PHP获取客户端IP函数
- IT服务管理领域的最佳实践知识体系ITIL4
- 菜菜PyTorch深度学习框架最全笔记(第二次课)
- 【JS】match() 方法
- SEO内页优化,SEO内容优化,内页快速SEO优化
- 网易云音乐常用API浅析
- 光猫可以直接接交换机吗 交换机能直接连光猫吗
- Linux——赋予普通用户root的权限
- 根据当前行情,计算历史上与当前最相似的行情python实现
- 【论文精度】Subdivision-Based Mesh Convolution Networks
- STM32 烧录程序后无法在内部FLASH保存数据问题解决