-
Notifications
You must be signed in to change notification settings - Fork 1
Misc
sakamoto edited this page Oct 26, 2017
·
1 revision
-
https://github.com/msgpack/msgpack-java/blob/develop/msgpack-jackson/src/test/java/org/msgpack/jackson/dataformat/MessagePackDataformatTestBase.java
-
MessagePackDataformatForPojoTest.java
で使うPOJOの定義とセットアップコード。
-
-
https://github.com/msgpack/msgpack-java/blob/develop/msgpack-jackson/src/test/java/org/msgpack/jackson/dataformat/MessagePackDataformatForPojoTest.java
-
MessagePackDataformatTestBase
でセットアップしたPOJOを、JacksonのObjectMapper
を使ってmsgpackにread/writeするテストコード。 -
testSerializationWithoutSchema()
にてSchema無しの、sequence形式の変換をテストしている。
-
-
https://github.com/msgpack/msgpack-java/blob/develop/msgpack-jackson/src/test/java/org/msgpack/jackson/dataformat/MessagePackParserTest.java
-
testParserShouldReadObject()
にて、MessagePacker
を使って手動で組み上げた主要msgpackデータ型を網羅したデータを、ObjectMapper
を使ってJavaのMapに変換するテストコード。 - Map型であることがわかっているので、以下のように
Map<String,Object>
型を指定して変換している。TypeReference<Map<String, Object>> typeReference = new TypeReference<Map<String, Object>>() {};
Map<String, Object> object = objectMapper.readValue(bytes, typeReference);
- Extension型については、パースした結果の値は
MessagePackExtensionType
となっており、拡張型のintとその値のbyte[]を取得してassertしている。 - テストコードからは、mapの要素の順序維持についての挙動は読み取れない・・・。
- → 実際にJava Objectに変換してみると、LinkedHashMap となっていた。実装依存ではあるが、とりあえず順序は許容される。
-
testByteArrayKey()
にて、Binaryがmapのキーだった場合に、byte[]にdeserializeするようなJacksonのカスタマイズがテストされている。- 以下、
testXXXKey()
で同様に、様々なキーの型に対応したカスタマイズがテストされている。
- 以下、
-
msgpack-lite では Unit8Array でmsgpackの生データを取り扱えるので、以下の記事を参考に、直接XHRでmsgpackを受信→decodeして表示したり、JSONをmsgpackにencodeしたりして、Netty側のエンドポイントとやり取りさせてみた。
- Reading binary data using jQuery Ajax Henry Algus
- AjaxでバイナリのJPEG画像データを受け取って表示する - Qiita
- XMLHttpRequestで取得した画像バイナリをJavaScriptでロードする - kinjouj.github.io
- Uint8Array - JavaScript | MDN
- バイナリデータの送信と受信 - XMLHttpRequest | MDN
- Cyber-Defenceの人が、burpでmsgpackをJSONに変換して表示するburp拡張作ってた。
- Fiddlerでのビューアプラグイン
- http://xuwei-k.github.io/scalajspack/
- https://github.com/xuwei-k/scalajspack
- http://kawanet.github.io/msgpack-lite/
- http://xuwei-k.hatenablog.com/entry/20150128/1422364396
-
https://qiita.com/ksgwr/items/ba36fd0035789c29da7e
- 2015年時点で実際にJavaで
MessagePack
のシリアライズ/デシリアライズに挑戦した人のメモ
- 2015年時点で実際にJavaで
Jackson公式ドキュメント系
-
FasterXML/jackson: Main Portal page for the Jackson project
-
FasterXML/jackson-docs: Documentation for the Jackson JSON processor.
-
Overview (Jackson-core 2.7.0 API)
-
SerializationFeature (jackson-databind 2.7.0 API)
Jacksonの使い方解説記事, Jacksonでpretty-print系
-
How to convert Java object to / from JSON (Jackson)
-
Jackson使い方メモ - Qiita
-
Jackson の痒いところ Tips - Qiita
-
How to pretty print JSON string using Jackson? | Kode Java
-
Enable JSON pretty print using Jackson API - Jackson JSON examples
-
java - Pretty printing JSON from Jackson 2.2's ObjectMapper - Stack Overflow
-
java - Jackson not displaying in Pretty Print format - Stack Overflow
-
How to enable pretty print JSON output (Jackson)
Jacksonでのカスタムシリアライザ系
-
JacksonHowToCustomSerializers ・ FasterXML/jackson-docs Wiki
-
備忘録的なblog: [Jackson]特定の型に対してカスタムなシリアライザを設定する
-
備忘録的なblog: [Jackson]末尾のスペースを取り除いてjson変換する
-
java - How do I use a custom Serializer with Jackson? - Stack Overflow
Gson公式、および日本語の使い方記事
-
google/gson: A Java serialization/deserialization library to convert Java Objects into JSON and back
-
com.google.code.gson:gson:2.8.2 API Doc :: Javadoc.IO
-
gson/UserGuide.md at master ・ google/gson
-
Gson - 覚えたら書く
Gsonでのカスタムシリアライザの参考記事
-
Serialize/deserialize byte array to/from base64 encoded String using Gson - Google グループ
-
Gson type adapter to serialize and deserialize byte arrays in base64
guavaを利用したUnicodeエスケープの実装参考記事
-
unicode - Convert International String to \u Codes in java - Stack Overflow
-
java - Convert UTF-8 Unicode string to ASCII Unicode escaped String - Stack Overflow
-
guava/UnicodeEscaper.java at master ・ google/guava
-
UnicodeEscaper (Guava: Google Core Libraries for Java 19.0 API)