Java基础之FastJson的解决方法

这篇文章主要介绍了Java基础之FastJson的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、fastJson将json格式字符串转化成List集合

注:json格式字符串必须符合数组型格式如[{"a":a},{"b":b}]

场景一:前端向后台传递数组格式的json字符串,如何转化成List集合

List<AccountBean> readJson2List =JSON.parseArray(json, AccountBean.class)注意这里是Bean.class而不是List.class

	@Test
	public void readJson2ListBean() {
		String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]";
		List<AccountBean> readJson2List =JSON.parseArray(json, AccountBean.class);
		//输出测试
		JsonUtils.beanToJson(readJson2List);
	}

场景二:前端向后台传递数组格式的json字符串,如何转化成List<HashMap<String,Object>>集合

	@Test
	public void readJson2ListMap() {
		String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]";
		List<HashMap> readJson2List =JSON.parseArray(json,HashMap.class);
		//输出测试
		JsonUtils.beanToJson(readJson2List);
	}

二、fastJson将json格式字符串转化成对象

场景一:前端向后台传递数组格式的json字符转化成Bean对象

@Test
	public void readJson2Bean() {
		String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}";
		AccountBean accountBean  =JSON.parseObject(json,AccountBean.class);
		//输出测试
		JsonUtils.beanToJson(accountBean);
	}

场景二:前端向后台传递数组格式的json字符串Map<String,Object>集合

@Test
	public void readJson2Map() {
		String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}";
		HashMap<String,Object> accountBean  =JSON.parseObject(json,Map.class);
		//输出测试
		JsonUtils.beanToJson(accountBean);
	}

测试:

Java基础之FastJson的解决方法

三、FastJson将对象或集合转化成json格式字符串

@Test
	public void beanAndCollectionTOJson() {
		AccountBean	bean = new AccountBean();
		bean.setAddress("china-Guangzhou");
		bean.setEmail("hoojo_@126.com");
		bean.setId(1);
		bean.setName("hoojo");
		String json  = JSON.toJSONString(bean);
		System.out.println(json);
	}

四、FastJson将json格式字符串转化成json对象

@Test
	public void jsonStringTOJsonBean() {
		String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}";
		JSONObject parse = (JSONObject) JSON.parse(json);
		String address = (String) parse.get("address");
		System.out.println("输出address=="+address);
	}

Java基础之FastJson的解决方法

五、FastJson将json格式字符串转化成json数组

	@Test
	public void jsonString2JsonArray() {
		String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]";
		JSONArray parseArray = JSON.parseArray(json);
		//输出测试
		JsonUtils.beanToJson(parseArray.get(0));
	}

Java基础之FastJson的解决方法

六、FastJson将java对象转化成json对象

@Test
	public void beanAndCollectionTOJsonBean() {
		AccountBean	bean = new AccountBean();
		bean.setAddress("china-Guangzhou");
		bean.setEmail("hoojo_@126.com");
		bean.setId(1);
		bean.setName("hoojo");
		JSONObject json  = (JSONObject) JSON.toJSON(bean);
		json.get("address");
		System.out.println(json);
	}

Java基础之FastJson的解决方法

Java有哪些集合类

Java中的集合主要分为四类:1、List列表:有序的,可重复的;2、Queue队列:有序,可重复的;3、Set集合:不可重复;4、Map映射:无序,键唯一,值不唯一。

感谢你能够认真阅读完这篇文章,希望小编分享的“Java基础之FastJson的解决方法”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,更多相关知识等着你来学习!