Jackson序列化和反序列化Json数据
Web技术发展的今天,Json和XML已经成为了web数据的事实标准,然而这种格式化的数据手工解析又非常麻烦,软件工程界永远不缺少工具,每当有需求的时候就会出现各种类库,框架以及工具来解决这些基础的问题,Jackson就是这些工具中的一个,使用这个工具开发者完全可以从手工结束Json数据的重复劳动中解放出来。使用Jackson首先需要下载相应的类库,如下的Maven dependency列出了完整的POM dependency。
1 <dependency> 2 <groupId>com.fasterxml.jackson.core</groupId> 3 <artifactId>jackson-core</artifactId> 4 <version>${jackson-2-version}</version> 5 </dependency> 6 7 <!-- Just the annotations; use this dependency if you want to attach annotations 8 to classes without connecting them to the code. --> 9 <dependency> 10 <groupId>com.fasterxml.jackson.core</groupId> 11 <artifactId>jackson-annotations</artifactId> 12 <version>${jackson-2-version}</version> 13 </dependency> 14 15 <!-- databinding; ObjectMapper, JsonNode and related classes are here --> 16 <dependency> 17 <groupId>com.fasterxml.jackson.core</groupId> 18 <artifactId>jackson-databind</artifactId> 19 <version>${jackson-2-version}</version> 20 </dependency> 21 22 <!-- smile (binary JSON). Other artifacts in this group do other formats. --> 23 <dependency> 24 <groupId>com.fasterxml.jackson.dataformat</groupId> 25 <artifactId>jackson-dataformat-smile</artifactId> 26 <version>${jackson-2-version}</version> 27 </dependency> 28 <!-- JAX-RS provider --> 29 <dependency> 30 <groupId>com.fasterxml.jackson.jaxrs</groupId> 31 <artifactId>jackson-jaxrs-json-provider</artifactId> 32 <version>${jackson-2-version}</version> 33 </dependency> 34 <!-- Support for JAX-B annotations as additional configuration --> 35 <dependency> 36 <groupId>com.fasterxml.jackson.module</groupId> 37 <artifactId>jackson-module-jaxb-annotations</artifactId> 38 <version>${jackson-2-version}</version> 39 </dependency>