博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GSON处理JSON
阅读量:7152 次
发布时间:2019-06-29

本文共 1902 字,大约阅读时间需要 6 分钟。

package com.wch.util;

import java.util.ArrayList;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.google.gson.Gson;

import com.google.gson.reflect.TypeToken;
import com.wch.entity.Users;

public class JsonUtil {
public static void main(String[] args) {
String str = "[{\"id\":1,\"username\":\"whwu123\",\"password\":\"mcgrady1\",\"nickname\":\"伍春晖\"}]";
Users users = new Users(1, "whwu123", "mcgrady1", "伍春晖");
Users users2 = new Users(2, "whwu1234", "mcgrady12", "伍春晖2");
List<Users> list = new ArrayList<Users>();
list.add(users);
list.add(users2);
Map<String, List<Users>> map = new HashMap<String, List<Users>>();
map.put("wch", list);
System.out.println(mapToJson(map));
}

/**

* 把对象转换成json字符串
* @param obj 传入需要转换的object对象
* @return
*/
public static String ParseJson(Object obj) {
Gson gson = new Gson();
String str = gson.toJson(obj);
return str;
}
/**
* 把字符串转成成对象
* @param <T>
* @param jsonStr
* @return
*/
public static void jsonToJavaBean(String json) {
Gson gson = new Gson();
Users person = gson.fromJson(json, Users.class);//对于javabean直接给出class实例
}
/**
* map to json
*
* @param map
* @return
*/
public static String mapToJson(Map<String, List<Users>> map) {

Gson gson = new Gson();

String json = gson.toJson(map);
return json;
}
/**
* json字符串转List集合
*/

public static void jsonToList(String json) {

Gson gson = new Gson();

List<Users> list = gson.fromJson(json, new TypeToken<List<Users>>() {}.getType());//对于不是类的情况,用这个参数给出
for (Users users : list) {
System.out.println(users.getNickname());
}
}

public static void jsonToMap(String json) {

Gson gson = new Gson();
Map<String, Users> maps = gson.fromJson(json, new TypeToken<Map<String, Users>>() {
}.getType());
for (Map.Entry<String, Users> entry : maps.entrySet()) {
System.out.println("key: " + entry.getKey() + " " + "value: " + entry.getValue());

}

}
}

转载于:https://www.cnblogs.com/whwu123/p/9020393.html

你可能感兴趣的文章
C++中#if #ifdef 的作用
查看>>
SQLServer - 约束
查看>>
在交换机上划分Vlan
查看>>
DB2 1069错误 由于登陆失败而无法启动服务的解决方法
查看>>
反射发出 Emit
查看>>
Apache Tajo:一个运行在YARN上支持SQL的分布式数据仓库
查看>>
使用SQL语句清空数据库所有表的数据
查看>>
[置顶] 搭建一个流媒体服务器--引子
查看>>
poj1504
查看>>
什么是ICMPv4协议?
查看>>
Android开发入门必看的知识体系
查看>>
String,StringBuffer与StringBuilder的差别??
查看>>
普林斯顿公开课 算法2-3:插入排序
查看>>
HTML5游戏开发引擎Pixi.js新手入门讲解
查看>>
51单片机寄存器组的设置(转)
查看>>
Unity 实现物体破碎效果(转)
查看>>
ASIHTTPRequestErrorDomain Code=5
查看>>
2011年排名前七位的Linux操作系统。
查看>>
SECURITY_ATTRIBUTES 设置低权限
查看>>
php中array_merge合并数组详解
查看>>