从JavaEE 7开始,一个专门用于处理JSON数据的API被纳入JavaEE规范体系,这就是Java API for JSON Processing (JSON-P) 。在JavaEE 8中,又在此基础上提供了Java API for JSON Binding (JSON-B)。至此,与XML数据类似,JavaEE提供了完整的处理JSON数据的APIs。
目前,Glassfish为JSON-P提供了参考实现;Eclipse Yasson为JSON-B提供了参考实现。
1. JSON-P
JSON-P是JSR标准规范之一,用以解析、生成、转换和查询JSON数据的APIs。
1) 与大多数JSON处理的API相似,JSON-P中的API也可以分为两大类:
- 一次性读取全部JSON数据,在内存中构建出完整Tree Model的对象模型API
- 一边读JSON数据,一边处理的Streaming API
2) JSON-P API的包结构
- javax.json包,树状模型API相关的API
Json类,所有JSON对象的工厂类,提供大量静态方法
JsonBuilderFactory
JsonObjectBuilder, JsonArrayBuilder
JsonParserFactory, JsonGeneratorFactory
JsonParser, JsonGenerator
JsonReaderFactory, JsonWriterFactory
J