JSON入力

Scala出力

JSONをScalaとは?

Scalaは構造化データにcase classを使用します。circeやplay-jsonでJSONを消費する際、対応する型が必要です。このツールはJSONからScala case classを生成します。

設定でcase class名とパッケージを設定し、Case ClassとOption Typesを有効にしてください。circeやplay-jsonでデシリアライズできます。

変換は完全にブラウザで実行されます。JSONはサーバーに送信されません。

JSONをScalaが役立つ場面

ScalaアプリでREST APIを消費する際、型付きcase classが必要です。

使い方

1

JSONを貼り付けまたはアップロード

JSONを左のエディタに貼り付けるか、アップロードでファイルを読み込んでください。サンプルで例データを読み込めます。設定でcase class名とパッケージを設定してください。

2

生成された型を確認

右パネルに生成されたScala case classが表示されます。無効なJSONの場合は先にJSONフォーマッターまたはJSONバリデーターで修正してください。

3

コピーまたはダウンロード

コピーまたはダウンロードでコードを取得してください。Scalaプロジェクトに貼り付けてください。

JSONをScalaの例

JSONオブジェクトからScala case classを生成する例です。

例:加入者レコード

JSON入力:

入力

生成されたScala出力:

出力

JSONをScalaが役立つ場面

REST API統合時に必要です。ここに貼り付けるとcirceやplay-jsonで使えるcase classが得られます。

2つのJSONをマージするにはJSONマージツールを使用してください。

APIレスポンス、設定ファイル、データエクスポートはJSONが多いです。ここで処理するとScala case classを生成できます。

よくある質問

Case classと通常クラス?

Case classはequalshashCodetoStringcopyを自動提供します。DTOに推奨されます。

Option型は?

オプショナルJSONフィールドにはOption Typesを有効にしてください。ScalaはOption[T]でnullableを表現します。

データは送信されますか?

いいえ。生成はブラウザで実行されます。

circeとplay-json?

両方とも生成されたcase classで動作します。circeはio.circe、play-jsonはplay.api.libs.jsonを使用します。

ネストオブジェクトは?

ネストJSONオブジェクトは別のcase classになります。配列はList[T]またはSeq[T]になります。

関連ツール

Scala JSONはcirce、play-jsonを参照。JSONはJSON仕様RFC 8259を参照。