Java基础之FastJson详解

 更新时间:2021年05月17日 16:59:57   作者:喜羊羊love红太狼  
今天给大家复习Java基础FastJson,文中有非常详细的代码示例,对正在学习java的小伙伴们有很好地帮助,需要的朋友可以参考下

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

相关文章

  • 实例解析Java单例模式编程中对抽象工厂模式的运用

    实例解析Java单例模式编程中对抽象工厂模式的运用

    这篇文章主要介绍了实例解析Java单例模式编程中对抽象工厂模式的运用,抽象工厂模式可以看作是工厂方法模式的升级版,本需要的朋友可以参考下
    2016-02-02
  • Java Apache common-pool对象池介绍

    Java Apache common-pool对象池介绍

    这篇文章主要介绍了Java Apache common-pool对象池介绍,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-09-09
  • springMVC 用户登录权限验证实现过程解析

    springMVC 用户登录权限验证实现过程解析

    这篇文章主要介绍了springMVC 用户登录权限验证实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • 详解shiro缓存机制

    详解shiro缓存机制

    Shiro提供了类似于Spring的Cache抽象,即Shiro本身不实现Cache,但是对Cache进行了又抽象,方便更换不同的底层Cache实现。下面通过实例代码给大家分享shiro缓存机制,感兴趣的朋友一起看看吧
    2017-09-09
  • 编写Spring MVC控制器的14个技巧(小结)

    编写Spring MVC控制器的14个技巧(小结)

    这篇文章主要介绍了编写Spring MVC控制器的14个技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • 详解SpringBoot如何开启异步编程

    详解SpringBoot如何开启异步编程

    本文主要介绍了详解SpringBoot如何开启异步编程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Java并发工具类之CountDownLatch详解

    Java并发工具类之CountDownLatch详解

    这篇文章主要介绍了Java并发工具类之CountDownLatch详解,CountDownLatch可以使一个获多个线程等待其他线程各自执行完毕后再执行,CountDownLatch可以解决那些一个或者多个线程在执行之前必须依赖于某些必要的前提业务先执行的场景,需要的朋友可以参考下
    2023-12-12
  • SpringBoot实现RabbitMQ监听消息的四种方式

    SpringBoot实现RabbitMQ监听消息的四种方式

    本文主要介绍了SpringBoot实现RabbitMQ监听消息的四种方式,包括@RabbitListener,MessageListener接口,MessageListenerAdapter适配器,@RabbitHandler这几种,感兴趣的可以了解一下
    2024-05-05
  • SpringBoot 如何根据不同profile选择不同配置

    SpringBoot 如何根据不同profile选择不同配置

    这篇文章主要介绍了SpringBoot 如何根据不同profile选择不同配置的操作方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 聊聊@value注解和@ConfigurationProperties注解的使用

    聊聊@value注解和@ConfigurationProperties注解的使用

    这篇文章主要介绍了@value注解和@ConfigurationProperties注解的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09

最新评论