gson
Google gson fromJson を使用する場合、通常変換先は自分で用意するクラスがほとんどのケースであり、 であり、Object に変換させることはあまりやらない。 Gson gson = new GsonBuilder().serializeNulls().create(); Map<String, Object> map = gson.fromJson("{a:0}", new</string,>…
Google gson でリストを復元する時の fromJson の書き方をよく忘れるのでメモ Gson gson = new GsonBuilder().serializeNulls().create(); List<Foo> list = gson.fromJson(string, new TypeToken<Collection<Foo>>(){}.getType());</collection<foo></foo>
先日書いたGSON使用時の String型のNULLパターン { "aaa": "null" } でなくて、 { "aaa": "" } にするための TypeAdapterFactory を書き直しました。 import java.io.IOException; import com.google.gson.Gson; import com.google.gson.TypeAdapter; import…
google GSON でJSONを生成する場合、そのままだと、nullオブジェクトは無視(出力されない)なので、GsonBuilder の serializeNulls() を呼び出して、 { "a": "null" } のように出す。 しかし、String オブジェクトの結果として、{ "a": "" } が欲しい場合が…
Java7をやめてJava8で開発するようになり、java.util.Dateを使わなくなり、 Google gson で LocalDate / LocalDateTime をシリアライズ・デシリアライズするのに 簡単に書ける方法を探すのに苦労したのでその過程と結果です。 GsonBuilder の registerTypeAd…
Google gson を使用してJSONデータをJavaオブジェクトに変換する場合、列挙型への変換をする時としない場合の差異、、 以下のような JSONデータがあるとする。 [ { "time": "2015-01-11 10:27:14", "status": 200 } , { "time": "2015-01-11 11:02:48", "sta…
Wicket で、JSONデータを返す方法は、WebPage の getRequestCycle() から、 void org.apache.wicket.request.cycle.RequestCycle.scheduleRequestHandlerAfterCurrent(IRequestHandler handler) メソッドを呼び出して IRequestHandler には、ResourceStreamR…
任意に定義する Java クラス Object のリストを JSON にする時に、GSON を使用した理由 次の理由から、GSON が便利だった。 ・任意に定義する Java クラスの要素で出力対象の要素を限定できること。 ・デフォルトで Javaクラスのフィールド名が、JSONで Key…
Google の JSON ライブラリ、GSON を使う時、 普通に使う、new演算子での生成、 Gson gson = new Gson(); これをそのまま使うと、java.util.Date は、以下のようになってしまう。 System.out.println( gson.toJson(new Date()) ); の結果は、、 "May 10, 201…
JSON データを Wikcet で出力するサンプル Google の GSON で書いてみた。 コンテンツタイプを、application/json と指定することになるようだ。 import org.apache.wicket.markup.html.link.Link; import org.apache.wicket.request.handler.resource.Resou…
JSON 用 Java ライブラリは、JSONIC だけではない。 Google に、GSON というのがある。 http://code.google.com/p/google-gson/ JSONIC にちょっと似ているが、encode/decode は、static メソッドではない。 Gson gson = new Gson(); String str = gson.toJs…