本测试方法,可以在 https://github.com/cwiki-us-demo/serialize-deserialize-demo-java/blob/master/src/test/java/com/insight/demo/serialize/MessagePackSerializer.java 中找到。

我们需要定义测试需要的 MAP,定义 Map 的方法你可以在下面的测试程序中找到。

/**
* SerializationMap
*/
@Test
public void testMessagePackSerializationMap() { byte[] bytes = new byte[0];
String uuid_a = UUID.randomUUID().toString();
String uuid_b = UUID.randomUUID().toString(); // Instantiate ObjectMapper for MessagePack
ObjectMapper objectMapper = new ObjectMapper(new MessagePackFactory()); Map<String, MessageData> map = new HashMap<>();
MessageData messageData = new MessageData(); // Element A in MAP
messageData.setUuid(UUID.randomUUID().toString());
messageData.setName("CWIKI.US - A");
map.put(uuid_a, messageData); // Element B in MAP
messageData = new MessageData();
messageData.setUuid(UUID.randomUUID().toString());
messageData.setName("CWIKI.US - B");
map.put(uuid_b, messageData); try {
// Serialize a Java object to byte array
bytes = objectMapper.writeValueAsBytes(map);
logger.debug("Length of Bytes: [{}]", bytes.length); // Deserialize the byte array to a MAP
Map<String, MessageData> deserialized = objectMapper.readValue(bytes, new TypeReference<Map<String, MessageData>>() {
});
logger.debug("Deserialized MAP Count: [{}]", deserialized.size());
logger.debug("MAP index 0: [{}]", deserialized.get(uuid_a).getName()); assertEquals("CWIKI.US - A", deserialized.get(uuid_a).getName()); } catch (JsonProcessingException ex) {
logger.error("Serialize Error", ex);
} catch (IOException e) {
e.printStackTrace();
} }

https://www.cwiki.us/display/Serialization/MessagePack+Jackson+Dataformat

最新文章

  1. linux安装nexus
  2. flask_单元测试
  3. [原创]用“人话”解释不精确线搜索中的Armijo-Goldstein准则及Wolfe-Powell准则
  4. node.js 入门教程(beginnder guide
  5. PhiloGL学习(6)——深情奉献:快乐的一家
  6. mongodb在windows下安装启动
  7. Startls Back 引起的 win10升级之后的闪屏问题
  8. 2018-11-04 在线代码离线翻译Chrome插件&quot;一马&quot;v0.0.14
  9. Kibana学习笔记——安装和使用
  10. python(leetcode)-136只出现一次的数字
  11. BugFree设置邮箱通知(这里以163邮箱为例)
  12. Android中Local Service最本质的作用是什么?
  13. arrow
  14. zabbix系列之监控类型及方式
  15. word绘图画布
  16. 携程的配置中心(阿波罗apollo)
  17. 一起学习MVC(1)初步了解MVC
  18. OO第一次总结作业
  19. 搭建OpenSTF+Jenkins持续集成环境的协同开发
  20. JS判断两个数是否能除尽

热门文章

  1. dos2unix、diff命令
  2. 深入理解Python中的GIL(全局解释器锁)
  3. T100弹出是否确认窗体方式
  4. es6 getter setter
  5. Scala学习六——对象
  6. vue实现吸顶
  7. hdfs存储与数据同步
  8. shell中处理参数getopts命令
  9. Delphi 使用数据库浏览器
  10. Raspberrypi 安装完MySQL之后登录不了(ERROR 1698 (28000))