メイン コンテンツをスキップする 補完的コンテンツへスキップ

キー/値ペアを作成

Talend Data Mapperでは、マッピングでキー/値のペアを使って作業するため、グループタイプが[Map] (マップ)であるストラクチャーエレメントを作成できます。

このタスクについて

この例では、各項目のオブジェクトが含まれているitems配列を持つ入力JSONファイルがあります。この変換の目的は、項目IDをキーとする各項目でオブジェクトが含まれているitemsオブジェクトを使い、出力JSONファイルを取得することです。入力には次のJSONサンプルを使います:
{
    "items": [
        {
            "id": "ABC123",
            "name": "MBIKE",
            "description": "27.5 inch electric mountain bike"
        },
        {
            "id": "DEF456",
            "name": "EBIKE",
            "description": "Electric hybrid bike"
        },
        {
            "id": "GHI789",
            "name": "WBIKE",
            "description": "Women's road bike"
        }
    ]
}

キー/値ペアで出力ストラクチャーを作成

グループタイプがMapであるエレメントが含まれているストラクチャーを作成します。

Procedure

  1. [Data Mapper]タブで[Hierarchical Mapper] (階層マッパー)ノードを展開し、[Structures] (ストラクチャー)を右クリックします。
  2. [New] (新規) > [Structure] (ストラクチャー)をクリックします。
  3. ウィザードが開いたら、[Create a new structure where you manually enter elements] (エレメントを手動で入力するための新しいストラクチャーを作成)を選択して[Next] (次へ)をクリックします。
  4. フォルダーを選択して新しいストラクチャーの名前を入力し、[Next] (次へ)をクリックします。
  5. 表記(この例ではJSON)を選択し、[Finish] (終了)をクリックします。
    空のストラクチャーが作成されるので、そのエレメントを作成できます。
  6. ワークスペースの左側にあるセクションを右クリックし、[New Element] (新規エレメント)をクリックしてルートエレメントを作成して、デフォルトプロパティを保持します。
  7. rootエレメントを右クリックし、itemsという名前の新しい子エレメントを作成します。
  8. itemsエレメントのパラメーターで、[Group Type] (グループタイプ)パラメーターの値を[Map] (マップ)に変更します。
  9. valueエレメントに、namedescriptionという子エレメントを作成します。
  10. ストラクチャーを保存します。

Results

ストラクチャーは次のようになります:
rootエレメント、そのrootエレメント内にグループタイプがMapであるitemsエレメント、そのitemsエレメント内にエントリーループ、そのエントリーループ内にkeyエレメントとvalueエレメント、そのvalueエレメント内にnameエレメントとdescriptionエレメントが含まれているData Mapperストラクチャー。

キー/値ペアをマッピング

入力ストラクチャーからエレメントをマッピングして、出力にキー/値ペアを作成します。

Before you begin

入力ストラクチャーがあること。このストラクチャーは、キー/値ペアを作成で提供されているJSONサンプルを使って作成できます。

Procedure

  1. 新しい標準マップを作成し、入力ストラクチャーと出力ストラクチャーを追加します。
  2. 項目IDをキーとして使用するため、入力idエレメントを対応する出力keyにドラッグ&ドロップします。
  3. 入力エレメントであるnamedescriptionを、対応する出力エレメントにドラッグ&ドロップします。

Results

マップが設定され、[Test Run] (テスト実行)機能を使って結果をチェックできるようになります。この例では、出力JSONは次のようになります:
{
                    "items": {
                    "ABC123": {
                    "name": "MBIKE",
                    "description": "27.5 inch electric mountain bike"
                    },
                    "DEF456": {
                    "name": "EBIKE",
                    "description": "Electric hybrid bike"
                    },
                    "GHI789": {
                    "name": "WBIKE",
                    "description": "Women's road bike"
                    }
                    }
                    }

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。