This category of APIs supports the streaming model for both reading and writing the JSON content. This model is designed to process a large amount of data in a more efficient way. Conceptually, this model is similar to the Streaming API for XML (StAX) parser that you might have used while dealing with the XML data.
Streaming APIs are grouped in the javax.json.stream package in the JSR specification. In this section, we will see how we can use the streaming APIs to efficiently process JSON data.
Here is a list of the frequently used classes in the streaming API provided by the JSR 353 specification:
Class |
Description |
javax.json.stream.JsonParser |
This class provides forward read-only access to JSON data by using the pull parsing programming model. |
javax.json.stream.JsonGenerator |
This class writes JSON to an output source as specified by the client application. It generates the name-value pairs for the JSON objects and values for the JSON arrays. |
Streaming APIs read and write the content serially at runtime in accordance with client calls, which makes them suitable for handling a large amount of data.