Java之JSON操作(Jackson)

Java to JSON:
 1 package json.jackson;
 2
 3 import bean.User;
 4 import com.fasterxml.jackson.databind.ObjectMapper;
 5
 6 import java.io.File;
 7 import java.util.Map;
 8
 9 /**
10  * Jackson – Java to JSON
11  * 功能:JSON与Java对象、Map等类型转换,JSON文件的读写等
12  * 依赖包:jackson-databind-2.8.11.1.jar、jackson-core-2.8.10.jar、jackson-annotations-2.8.0.jar
13  * https://github.com/FasterXML/jackson-databind
14  */
15 public class JavaToJSON {
16     public static void main(String[] ars) throws Exception {
17         User user = new User("tom", 25, "NO.1 street");
18         ObjectMapper objectMapper = new ObjectMapper();
19
20         // Java对象转json,也支持bytes
21         String json = objectMapper.writeValueAsString(user);
22         System.out.println("Java对象转json:" + json);
23
24         // json转Java对象
25         User user2 = objectMapper.readValue(json, User.class);
26         System.out.println("json转Java对象" + user2);
27
28         // 读文件
29         String jsonFilePath = "src/main/java/json/jackson/JsonReader.json";
30         User user3 = objectMapper.readValue(new File(jsonFilePath), User.class);
31         System.out.println("读取JSON文件:" + user3);
32         // 写文件
33         objectMapper.writeValue(new File(jsonFilePath), user3);
34
35         // json转map,也支持List
36         Map map = objectMapper.readValue(json, Map.class);
37         System.out.println("json转map:" + map);
38
39         // map转json字符串,支持所有类型转字符串
40         String json2 = objectMapper.writeValueAsString(map);
41         System.out.println("map转json:" + json2);
42
43     }
44 }
JsonNode:
 1 package json.jackson;
 2
 3 import com.fasterxml.jackson.databind.JsonNode;
 4 import com.fasterxml.jackson.databind.ObjectMapper;
 5
 6 import java.io.File;
 7 import java.util.List;
 8
 9 /**
10  * JsonNode
11  * 处理复杂的JSON,返回多个对象的情况
12  * 从文件中读取复杂的JSON,根据key找到对应value值
13  * 依赖包:jackson-databind-2.8.11.1.jar、jackson-core-2.8.10.jar、jackson-annotations-2.8.0.jar
14  * https://github.com/FasterXML/jackson-databind
15  */
16 public class JSONTreeDemo {
17     public static void main(String[] ars) throws Exception {
18         ObjectMapper objectMapper = new ObjectMapper();
19         String jsonFilePath = "src/main/java/json/jackson/Json2.json";
20         // 以树形态支持多对象的情况:支持读取多种类型
21         JsonNode jsonNode = objectMapper.readTree(new File(jsonFilePath));
22         System.out.println("jsonNode:" + jsonNode);
23         // 根据key查询多个值,返回list
24         List<JsonNode> list = jsonNode.findValues("name");
25         System.out.println("Values:" + list);
26
27         // 根据key查询单个值
28         String channel = jsonNode.get("channel").asText();
29         System.out.println("查询channel的值:" + channel);
30     }
31 }

原文地址:https://www.cnblogs.com/gongxr/p/8446922.html

时间: 2024-08-30 06:19:57

Java之JSON操作(Jackson)的相关文章

Java之JSON操作(gson)

使用gson包操作JSON数据. 依赖包:gson-2.8.2.jar <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.2</version></dependency> 代码如下: 1 package json.gson; 2 3 import java.util.Ar

java后台JSON操作

将参数转为json格式字符串的两种方式:方式一:JSONObject jo = new JSONObject();jo.put("certNo", "522121198710114617");jo.put("certType", "IDENTITY_CARD");String jostr = jo.toJSONString(); 方式二:Map<String, Object> map2 = new HashMap&

js与java对json的操作

JSON呢,是现在大部分,并且主流的传递数据的方式. 今天讲一下javascript的java对json的操作 提到js,当下就有一个比较主流的插件,vue.js,这个插件程序员没用过也都听说过吧, 非常方便的一个js插件,像js对于json的操作比如说json的话直接可以点出来,像数据的话 data[0]需要给下标才能点出来, java呢处理json就比较复杂了 import org.json.JSON; 需要导一下包,对于已经toString的字符串 可以使用JSONObject obj =

Java和js操作json

Js中 Json字符串转json对象 //将json格式的字符串转为json对象 var t = JSON.parse('{"name":123}'); alert(t.name); json对象转json字符串 //json对象数组. //packJson 为对象数组 packJson = [ {"name":"nikita", "password":"1111"}, {"name":

java利用json-lib操作json

1.1.  下载json-lib.jar http://sourceforge.net/projects/json-lib/files/json-lib/ 1.2.  Java对象转换为json 1.2.1.  Map对象转换为json Map2Json.java package json; import java.util.HashMap; import java.util.Map; import net.sf.json.JSONArray; public class Map2Json { p

转换JSON工具——Jackson的简单使用

什么是Jackson 可以轻松实现Java对象与JSON字符串的转换 准备工作:导包 Jackson的jar all下载地址:http://jackson.codehaus.org/1.7.6/jackson-all-1.7.6.jar 1.实体对象转JSON jackson使用getter方法定位属性(而不是字段)   可以通过添加注解 @JsonIgnore 使某些getter来进行忽略 将对象或集合转为json字符串 package cn.jackson; import java.io.I

java系列--JSON数据的处理

http://blog.csdn.net/qh_java/article/details/38610599 http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html java处理JSON的框架就我目前知道的有3种: 1.Jackson框架: 提供两个类 JsonGenerator    ObjectMapper 2.josn-lib框架:提供的主要类有 JSONObject      JSONArray 3.org-

JS和JAVA使用JSON方法解析

JS和JAVA使用JSON方法解析 一.JS部分================== 将json字符串转换为json对象的方法.在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键. 例如: JSON字符串: var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象: var str2 = {

JSON以及Java转换JSON的方法

本文主要讲述如下几个内容: 1.JSON定义以及JSON的特性 2.如何在JavaScript中解释JSON格式数据 3.如何在Java代码中使用JSON(讲对象转换成JSON对象以及解释JSON字符串) 一.JSON w3c上对JSON有比较详细的介绍,链接http://www.w3school.com.cn/json/index.asp.下面仅讲述重要的几点. Json是 JavaScript 对象表示法(JavaScript Object Notation),是轻量级的文本数据交换格式,具