json与java对象之间的转换

一直记不住json转java对象以及对象转json格式。今天系统的学习一下。

1、fastjson

//对象与json的转换
		BaseVO baseVO = new BaseVO();
		String baseStr = JSON.toJSONString(baseVO);
		JSONObject parseObject = JSONObject.parseObject(baseStr);
		BaseVO bVo = JSON.parseObject(baseStr, BaseVO.class);
		
		//list与json的转换
		List<BaseVO> bList = new ArrayList<BaseVO>();
		List<BaseVO> students = JSON.parseObject(JSON.toJSONString(bList),new TypeReference<List<BaseVO>>(){});
		
		//map与json的转换
		Map<String, Object> map = new HashMap<>();
		String mapStr = JSON.toJSONString(map);
		JSONObject parseObject2 = JSONObject.parseObject(mapStr);
		Map<String, Object> map1 = JSONObject.toJavaObject(parseObject2, Map.class);

2、gson

//对象与json的转换
		BaseVO baseVO = new BaseVO();
		String json = new Gson().toJson(baseVO);
		JsonObject obj = new Gson().fromJson(json,JsonObject.class);
		BaseVO bVo = new Gson().fromJson(json, BaseVO.class);
		
		//list与json的转换
		List<BaseVO> bList = new ArrayList<BaseVO>();
		String json2 = new Gson().toJson(bList);
		List<BaseVO> bVos = new Gson().fromJson(json2, (new TypeToken<List<BaseVO>>() {
		}).getType());
		
		//map与json的转换
		Map<String, Object> map = new HashMap<>();
		String json3 = new Gson().toJson(map);
		Map<String, Object> map1 = new Gson().fromJson(json3, Map.class);

3、 net.sf.json

//对象与json的转换
		BaseVO baseVO = new BaseVO();
		JSONObject fromObject = JSONObject.fromObject(baseVO);
		String jsonStr = fromObject.toString();
		BaseVO bVo = (BaseVO)fromObject.toBean(fromObject, BaseVO.class);
		
		//list与json的转换
		List<BaseVO> bList = new ArrayList<BaseVO>();
		JSONArray jsonArray = JSONArray.fromObject(bList);
		List<BaseVO> bVos = jsonArray.toList(jsonArray);
		
		//map与json的转换
		Map<String, Object> map = new HashMap<>();
		JSONArray jsonArray1 = JSONArray.fromObject(map);
		Map<String, Object> map1 = (Map)JSONArray.toCollection(jsonArray1,Map.class);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值