Gson
将对象转化成JSON字符串
// 引入jar包
//在需要转换JSON字符串的位置编写如下代码即可:
//String json = new Gson().toJSON(要转换的对象);
Book b = BookDao.find();
String json = new Gson().toJson(b);
System.out.println(json);
JSON转换成对象
// 引入jar包
//在需要转换JSON字符串的位置编写如下代码即可:
//对象 = new Gson().fromJson(JSON字符串,对象类型.class);
String json = "{\"id\":1,\"name\":\"金苹果\",\"info\":\"嘿嘿嘿嘿嘿嘿\",\"price\":198.0}";
Book book = new Gson().fromJson(json, Book.class); System.out.println(book);
JSON转换成集合
// 引入jar包
//在需要转换JSON字符串的位置编写如下代码即可:
//对象 = new Gson().fromJson(JSON字符串,对象类型.class);
String json = "{\"id\":1,\"name\":\"金苹果\",\",\"info\":\"嘿嘿嘿嘿嘿嘿\",\"page\":[\"哈哈哈\",\"嘻嘻嘻\"]}";
HashMap data = new Gson().fromJson(json, HashMap.class);
//下面这行代码输出结果为[哈哈哈,嘻嘻嘻],看起来是数组
System.out.println(data.get("page"));
//其中包含数组部分,但是在转换过后会被转成ArrayList
//输出结果为class java.util.ArrayList
System.out.println(data.get("page").getClass());
//取到page的值
List page =(List)data.get("page");
System.out.println(page.get(1));
FastJson
将对象转化成JSON字符串
// 引入jar包
//在需要转换JSON字符串的位置编写如下代码即可:
//String json=JSON.toJSONString(要转换的对象);
Book b = BookDao.find();
String json=JSON.toJSONString(b);
System.out.println(json);
JSON转换成对象
// 引入jar包
//在需要转换Java对象的位置, 编写如下代码:
//类型 对象名=JSON.parseObject(JSON字符串, 类型.class);
//或 List<类型> list=JSON.parseArray(JSON字符串,类型.class);
String json = "{\"id\":1,\"name\":\"金苹果\",\"info\":\"嘿嘿嘿嘿嘿嘿\",\"price\":198.0}";
Book book = JSON.parseObject(json, Book.class); System.out.println(book);
List<String> strings = JSON.parseArray("[\"一二三\",\"二三四\",\"三四五\"]", String.class);
System.out.println(strings.get(1));