この試験方法も https://github.com/cwiki-us-demo/serialize-deserialize-demo-java/blob/master/src/test/java/com/insight/demo/serialize/MessagePackSerializer.java で見つけます。
私たちは、あなたが地図を定義する方法は、次の試験手順で見つけることができ、MAPのテストニーズを定義する必要があります。
/ ** * SerializationMap * / @Test 公共ボイドtestMessagePackSerializationMap(){ バイト[]バイト=新しいバイト[0]。 文字列uuid_a = UUID.randomUUID()のtoString(); 文字列uuid_b = UUID.randomUUID()のtoString(); MessagePackのための//インスタンス化ObjectMapper ObjectMapper objectMapper =新しいObjectMapper(新MessagePackFactory()); 地図<文字列、のMessageData>マップ=新しいHashMapの<>(); MessageDataのMessageData =新しいのMessageData(); MAPにおける//要素A messageData.setUuid(UUID.randomUUID()のtoString())。 messageData.setName( "CWIKI.US - A")。 map.put(uuid_a、のMessageData)。 MAPで//要素B MessageData =新しいのMessageData(); messageData.setUuid(UUID.randomUUID()のtoString())。 messageData.setName( "CWIKI.US - B")。 map.put(uuid_b、のMessageData)。 試す{ //バイト配列にJavaオブジェクトをシリアル バイト= objectMapper.writeValueAsBytes(マップ) logger.debug( "バイトの長さ:[{}]"、bytes.length)。 // MAPにバイト配列をデシリアライズ 地図<文字列のMessageData>デシリアライズ= objectMapper.readValue(バイト、新しいTypeReference <地図<文字列のMessageData >>(){ }); logger.debug( "非直列化MAP数:[{}]"、deserialized.size())。 logger.debug( "MAPインデックス0:[{}]"、deserialized.get(uuid_a).getName())。 assertEquals( "CWIKI.US - A"、 }キャッチ(JsonProcessingExceptionのEX){ logger.error( "エラーをシリアル"、EX)。 }キャッチ(IOExceptionを電子){ e.printStackTrace(); } }
https://www.cwiki.us/display/Serialization/MessagePack+Jackson+Dataformat