Jackson - 概述

Jackson是一个简单的基于java的库,用于将java对象序列化为JSON,反之亦然.

功能

  • 易于使用.  -  jackson API提供了一个高级外观,以简化常用的用例.

  • 无需创建映射.  -  jackson API为大多数要序列化的对象提供默认映射.

  • 性能.  - Jackson,内存占用少,适用于大型物体图形或系统.

  • 清洁JSON.  -  jackson创建了一个干净,紧凑的JSON结果,易于阅读.

  • 无依赖性.  - jackson库除了jdk之外不需要任何其他库.

  • 开源  -  jackson库是开源的,可以免费使用.

处理JSON的三种方式

Jackson提供了三种处理JSON的替代方法

  • Streaming API  - 读取和写入JSON内容为离散事件. JsonParser读取数据,而JsonGenerator写入数据.它是三者中最强大的方法,具有最低的开销和最快的读/写操作.它是用于XML的Analogus to Stax解析器.

  • 树模型  - 准备JSON文档的内存树表示. ObjectMapper构建JsonNode节点的树.这是最灵活的方法.它类似于XML的DOM解析器.

  • 数据绑定  - 使用POJO(普通旧Java对象)将JSON转换为属性访问器或使用注释.它有两种类型.
    ObjectMapper为两种类型的数据绑定读取/写入JSON.数据绑定是最方便的方式,类似于XML的JAXB parer.

    • 简单数据绑定  - 将JSON转换为Java地图,列表,字符串,数字,布尔值和null对象.

    • 完整数据绑定  - 将JSON转换为任何JAVA类型.