GsonでJavaオブジェクトをメンバ変数の定義順にJSONに変換する

JavaオブジェクトをJSONに変換するためのライブラリはいくつか種類があります。私が参加した案件ではJSONICを使用していたのですが、JSONICで変換すると、JavaオブジェクトとJSONでメンバ変数の順番が違ってしまいます。例えば↓

●JSONに変換するオブジェクト

 このようにメンバ変数の定義順ではなくアルファベット順になります。JSONなのでとくに順番に意味が無く、問題はありません。しかし、私の場合、設計書での定義順とオブジェクトのメンバ変数の定義順を合わせていたため、結果出力されるJSONだけがアルファベット順というのはなんとなく嫌だったので、メンバ変数順にできないかいろいろ試しました。結果、JSONICの代わりにGsonを使うことにしました。

 ●GsonでJavaオブジェクトをJSON文字列に変換する例

 このように、Gsonでは特に何も意識せずとも標準でオブジェクトで定義したメンバ変数の順番でJSONを出力してくれます。(o≧▽≦)ゝ

Gsonのダウンロードはこちら


Browser Shots 1.2へのアップデートでビジュアルエディタが使えなくなる

WordPressのプラグインであるBrowser Shotsのアップデートの通知が来ていたので、1.2へアップデートするとビジュアルエディターが使えなくなってしまいました_| ̄|○

こんな感じで記事が真っ白で編集できません。テキストエディターは使えるようですが、非常に不便です。

browsershots2

また、既存の記事の画面ショットもレイアウトがおかしくなってしまいました。

browsershots1

Browser ShotsはURLだけでそのサイトの画面ショットを記事の中に組み込んでくれる非常に便利プラグインなのに、残念ですが、次回のアップデートまでは無効にしておいた方がよさそうです。

————————————–

※追記(2014/01/25)

バージョン1.3.1にアップデートして改善していることを確認。


LinuxのコマンドラインでグローバルIPアドレスを確認する

サーバを外部API、サービスに接続する際、大抵の場合接続先のサービスはIPアドレスの制限を掛けています。(特に開発環境は)

そんな時に、自社のサーバからの接続を許可してもらうために、接続先の会社にグローバルIPアドレスを通知する必要があります。

そんなときに、LinuxサーバのコマンドラインからサーバのグローバルIPアドレス(=外部に出るときのIPアドレス)を調べる方法です。

curl http://httpbin.org/ip
curl ifconfig.me
curl inet-ip.info

上記のコマンドのどれでもいいので、実行するとLinuxサーバのグローバルIPアドレスを返してくれます。こんな感じに↓

% curl inet-ip.info
210.XXX.XXX.XX

特に自分たちがインフラの構築を担当してない場合、インフラ担当とかに聞くぐらいならこの方法で調べちゃったほうが早いです。(◎´・ω・)

 


日々のSE業務で得たノウハウと趣味