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);
	}

测试:

三、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);
	}

五、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));
	}

六、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 FastJson内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换操作

    fastJson对于json格式字符串的解析主要用到了一下三个类: JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换. JSONObject:fastJson提供的json对象. JSONArray:fastJson提供json数组对象. 我们可以把JSONObject当成一个Map<String,Object>来看,只是JSONObject提供了更为丰富便捷的方法,方便我们对于对象属性的操作.我们看一下源码. 同样我们可以把JSONArra

  • java使用FastJson解析Json数据

    fastjson 是一个性能极好的用 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发. 主要特点: 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson) 强大(支持普通JDK类包括任意Java Bean Class.Collection.Map.Date或enum) 零依赖(没有依赖其它任何类库除了JDK) 一 .生成Json: JavaBean.List<JavaBean>.List<String>.List<Map&l

  • java如何利用FastJSON、Gson、Jackson三种Json格式工具自定义时间序列化

    Java处理JSON数据有三个比较流行的类库FastJSON.Gson和Jackson. Jackson Jackson是由其社区进行维护,简单易用并且性能也相对高些.但是对于复杂的bean转换Json,转换的格式鄙视标准的Json格式.PS:Jackson为Spring MVC内置Json解析工具 Gson Gson是由谷歌公司研发的产品,目前是最全的Json解析工具.完全可以将复杂的类型的Json解析成Bean或者Bean到Json的转换 FastJson Fastjson是一个Java语言

  • java中fastjson生成和解析json数据(序列化和反序列化数据)

    本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,List<String>,List<Map<String,Object>) 2.通过一个android程序测试fastjson的用法. fastjson简介: Fastjson是一个Java语言编写的高性能功能完善的JSON库.fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jack

  • java 实现反射 json动态转实体类--fastjson

    我就废话不多说了,大家还是直接看代码吧~ package test.refect; public class Student { // 姓名 private String name; // 年龄 private String age; // 住址 private String address; public String getName() { return name; } public void setName(String name) { this.name = name; } public

  • java JSON解析库Alibaba Fastjson用法详解

    本文实例讲述了java JSON解析库Alibaba Fastjson用法.分享给大家供大家参考,具体如下: Json是一种轻量级的数据交换格式,应该在一个程序员的开发生涯中是常接触的.简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率. 现在主流的对象与 JSON 互转的工具很多,这里介绍的是阿里巴巴的开源库 - Fastjson.Fastjson是一个Java库,可用于将Java对象转换为其JSON表示.它还可用

  • Java的JSON处理器fastjson使用方法详解

    fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发. 主要特点: • 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson) • 强大(支持普通JDK类包括任意Java Bean Class.Collection.Map.Date或enum) • 零依赖(没有依赖其它任何类库除了JDK) 示例代码: import com.alibaba.fastjson.JSON; Group group = new Group

  • Java 中FastJson的基本使用

    FastJSON是一个Java语言编写的高性能,功能完善,完全支持http://json.org的标准的JSON库. 在开发Android的过程中,如果我们经常与服务器打交道,更新数据等等,那么json必然是个好的数据格式,但是有了json我们要解析它,使用原生的解析也可以,但是很不高效,所以这里介绍两种json数据解析的方式, 一种是FastJSon ,这个是阿里巴巴出的,号称最快的解析速度. 第二种使我们伟大的Google提供的Gson 来解析json,两个解析json都很方便,而且都很强大

  • Java FastJson使用教程

    Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象. Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象. Fastjson 源码地址:https://github.com/alibaba/fastjson Fastjson 扩展阅读:https://www.w3cschool.cn/fastjson/ 一.Fastjson 特性 提供服务器端.安卓客户端两种解析工具,性能表

  • Java fastjson解析json字符串实现过程解析

    jar的下载 maven方式 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.67</version> </dependency> jar包 百度云链接:https://pan.baidu.com/s/1x_C4ii3OFMXbsoqikmZKGw 提取码:ku6z 示例 解析j

随机推荐