这样的List数组如何转化为json格式的?

beijibingdong 发布于 2016/08/04 08:47
阅读 802
收藏 0

MySQL连接为什么挂死了?别踩坑!>>>

[[201201160789, 人事信息临时表],  [201310111348, 一般变动(离退)], [201511261388, 遗属业务]]

把样一个list数组转化为Json格式,麻烦说的尽可能详细点,我是小白。能举个栗子就更好了。谢谢!

加载中
0
丶KKdo
丶KKdo
public class ListToJson {
	public static void main(String[] args) {
		List<Map<String, String>> list = new ArrayList<Map<String, String>>();
		Map<String, String> map1 = new HashMap<String, String>();
		Map<String, String> map2 = new HashMap<String, String>();
		map1.put("201201160789", "人事信息临时表");
		map2.put("201310111348", "一般变动(离退)");
		list.add(map1);
		list.add(map2);
		System.out.println(toJson(list));
	}
	
	public static String toJson(List<Map<String, String>> list) {
		Map<String, String> map = new HashMap<String, String>();
		Set<String> keySet = new HashSet<String>();
		StringBuffer json = new StringBuffer("{");
		for(int i = 0; i < list.size(); i++) {
			json.append((i+1) +" : {");
			map = list.get(i);
			keySet = map.keySet();
			for(String key : keySet) {
				json.append(key + " : " + map.get(key) + ",");
			}
			json.deleteCharAt(json.length()-1);
			json.append("},");
		}
		json.deleteCharAt(json.length()-1);
		json.append("}");
		return json.toString();
	}

}

结果:

{1 : {201201160789 : 人事信息临时表},2 : {201310111348 : 一般变动(离退)}}



0
koukou890
koukou890

有各种第三方的工具类 可以直接来用
比如推荐你一个 nutz

http://nutz.cn

Json.toJson(list)

0
W
WO不吹牛

本身数据不复杂,简单点的方法就是自己重写toString方法拼一下就完了

fastjson,jackson也可以

0
M
MrGu

用fastjson的话,

String jsonStr = JSON.toJSONString(list); 

就可以了

0
丶KKdo
丶KKdo
list里面包含了map, 先遍历获取list的index和map的json,然后map对象的key作为一个set,然后获取value应该就可以了吧
返回顶部
顶部