Based on Scenario 1: Extracting JSON data from a file using JSONPath without setting a loop node, this scenario extracts data under the book array of the JSON file Store.json by specifying a loop node and the relative JSON path for each node of interest, and then displays the flat data extracted on the console.
In the Studio, open the Job used in Scenario 1: Extracting JSON data from a file using JSONPath without setting a loop node to display it in the design workspace.
Double-click the tFileInputJSON component to open its Basic settings view.
Select JsonPath from the Read By drop-down list.
In the Loop Json query field, enter the JSONPath query expression between double quotation marks to specify the node on which the loop is based. In this example, it is "$.store.goods.book[*]".
Click the [...] button next to Edit schema to open the schema editor.
Select the five columns added previously and click the [x] button to remove all of them.
Click the [+] button to add four columns, book_title, book_category, and book_author of String type, and book_price of Double type.
Click OK to close the schema editor. In the pop-up dialog box, click Yes to propagate the schema to the subsequent component.
In the Json query fields of the Mapping table, enter the JSONPath query expressions between double quotation marks to specify the nodes that hold the desired data. In this example, enter the JSONPath query expressions "title", "category", "author", and "price" relative to the four child nodes of the book node respectively.
Press Ctrl+S to save the Job.
Press F6 to execute the Job.
As shown above, the book information is extracted from the source JSON data and displayed in a flat table on the console.