Jackson库的优点及使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jackson库的优点及使用相关的知识,希望对你有一定的参考价值。
参考技术A 个人没有对比过其它JSON库的性能,自己使用中认为Jackson库是挺好使用的,能处理各种非规范key值,比如中文、数字开头的、特殊字符开头的等等。另外针对大对象也没问题,目前使用过10M左右的响应数据,没出现过问题。@JsonProperty可以放在成员变量、getter方法、setter方法上,方法优先于成员变量。如果有多个getter发封,在转为Json String时会有多个属性输出。
如果Json String中的属性比Java类中多,需要在类上面添加注解@JsonIgnoreProperties(ignoreUnknown =true)。
如果Json String中的属性比Java类中多,需要在类上面添加注解@JsonIgnoreProperties(ignoreUnknown =true)。如果在将Java对象转为Json String时,不想输出那些null值,需要添加注解: @JsonInclude(value =JsonInclude.Include.NON_NULL)
针对基本类型的封装类,可以自由在String和封装类间转换。
如果有特殊需求,可以自定义转换器。
Jackson 使用简介
参考技术AJackson 优点很多。
Jackson 的 1.x 版本的包名是 org.codehaus.jackson ,当升级到 2.x 版本时,包名变为 com.fasterxml.jackson 。
Jackson 的核心模块由三部分组成。
使用 Maven 构建项目,可以只显示地添加 jackson-databind 依赖, jackson-core 和 jackson-annotations 也会通过 Maven 传递性依赖 随之添加到 Java 项目工程中。
Jackson 最常用的 API 就是基于 对象绑定 的 ObjectMapper :
之所以称为 ObjectMapper 是因为它将 JSON 映射 到 Java 对象(反序列化),或者将 Java 对象 映射 到 JSON (序列化)。
开始之前先准备一个拥有两个属性的 POJO 。
案例:
其他序列化 API:
其他反序列化 API:
先实现一个工具类 JsonFilterUtil 。
使用 Demo:
以上是关于Jackson库的优点及使用的主要内容,如果未能解决你的问题,请参考以下文章