おしりんブログ

新人PGおしりんの色々まとめるよブログ

(Michael)Jackson

こんばんは。


今日はお仕事用のパソコンにcurlを再インストールしたんだけど、
ちょっと前にcurlについてまとめた記事が役にたったよ。

SSL証明書の場所とかファイルの名前とかメモっておいてよかった。


そんな今日は、これまた開発現場で「お~!」と思ったJavaライブラリ、
(Michael)Jacksonについてまとめたいと思うよ。


・Jacksonとは
 JSON(JavaScript Object Notation)と呼ばれる
 データ記述言語を扱うためのJavaライブラリのこと


JSONとは
 JavaScript Object Notationの略称であり、軽量なデータ記述言語の一つ
 
 MIMEタイプはapplication/json拡張子json
 
 様々なソフトウェアやプログラミング言語間における
 データの受け渡しに使えるよう設計されている
 
JSONの表記方法
 オブジェクトは、キーと値のペアをコロンで対にして、
 これらの対をコンマで区切ってゼロ個以上列挙し、
 全体を波かっこでくくることで表現する
  
 例:{"name": "おしりん", "age": 22}
  
json色んなところで使われてるらしいから、要チェックですな。
13日の金曜日


Jacksonとjsonについてはざっとこんな感じかな。
で、なんであたしがJacksonすごい!ってなったのかと言うと、

Jacksonは
jsonJavaオブジェクトにバインディング してくれるから、なのだ。


(ここから心の声)
jsonデータを取得したぞ!キー=値形式で見やすい!
Javaでもこの形式(キー=値)を維持したままデータを扱いたい!

でも、どうやってこの形式を維持したまま
Javaオブジェクトにすればいいんだろう…

えっ!ObjectMapper!?君がjsonJavaオブジェクトにしてくれるって!?
(ここまで)

そう。JacksonライブラリのObjectMapperクラスが
いとも簡単にjsonデータをJavaオブジェクトに変換(バインド)してくれるのだ。


例:

byte[] jsondata = new byte[]{/**表記法で記したjsonデータをバイト配列化したもの*/};

ObjectMapper objectMapper = new ObjectMapper();
LinkedHashMap<String, String> result = objectMapper.readValue(jsondata[], LinkedHashMap.class);


これだけでおっけー!
result.get("name")で"おしりん"が取れちゃう!

ObjectMapperのreadValueさんマジすげえ!ってなる。


ちなみにJavaオブジェクトをjsonに変換したいってときは
objectMapper.writeValue()を使えばこれまた一瞬で変換できちゃう。


ちょっとやばい眠いので明日追記書きまする。
雑すぎ~


とりあえず、Jacksonすごい。Michaelもびっくり。
あと初めてはてな記法使えた。oshirinびっくり。