使用fastjson进行自定义类的列表和字符串转换

1.环境

jdk1.8,fastjson

2.pom.xml

[html] view plain copy
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>co.neutron.json</groupId>
  5. <artifactId>fastjson</artifactId>
  6. <version>0.0.1-SNAPSHOT</version>
  7. <packaging>jar</packaging>
  8. <name>fastjson</name>
  9. <url>http://maven.apache.org</url>
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. </properties>
  13. <dependencies>
  14. <dependency>
  15. <groupId>junit</groupId>
  16. <artifactId>junit</artifactId>
  17. <version>4.8</version>
  18. <scope>test</scope>
  19. </dependency>
  20. <dependency>
  21. <groupId>com.alibaba</groupId>
  22. <artifactId>fastjson</artifactId>
  23. <version>1.2.12</version>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.slf4j</groupId>
  27. <artifactId>slf4j-log4j12</artifactId>
  28. <version>1.7.2</version>
  29. </dependency>
  30. </dependencies>
  31. </project>

3.实体类

[html] view plain copy
  1. package co.neutron.json.fastjson.entity;
  2. public class User {
  3. private int id;
  4. private String name;
  5. private int age;
  6. public User() {
  7. super();
  8. }
  9. public User(int id, String name, int age) {
  10. super();
  11. this.id = id;
  12. this.name = name;
  13. this.age = age;
  14. }
  15. public int getId() {
  16. return id;
  17. }
  18. public void setId(int id) {
  19. this.id = id;
  20. }
  21. public String getName() {
  22. return name;
  23. }
  24. public void setName(String name) {
  25. this.name = name;
  26. }
  27. public int getAge() {
  28. return age;
  29. }
  30. public void setAge(int age) {
  31. this.age = age;
  32. }
  33. @Override
  34. public String toString() {
  35. return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
  36. }
  37. }

4.测试类

[java] view plain copy
  1. package co.neutron.json.fastjson;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.junit.Assert;
  5. import org.junit.Test;
  6. import com.alibaba.fastjson.JSON;
  7. import co.neutron.json.fastjson.entity.User;
  8. public class ArrayListTest {
  9. /*
  10. * 测试内容如下
  11. * 1.将User类型数组转换成json字符串
  12. * 2.将json字符串转换成为User数组
  13. */
  14. @Test
  15. public void testArray2StringAndString2List() {
  16. User user1 = new User(1, "张1", 11);
  17. User user2 = new User(2, "张2", 12);
  18. User user3 = new User(3, "张3", 13);
  19. User user4 = new User(4, "张4", 14);
  20. User[] users = {user1, user2, user3, user4};
  21. /*
  22. * 将数组转换为Json字符串
  23. * result:
  24. * [{"age":11,"id":1,"name":"张1"},{"age":12,"id":2,"name":"张2"},
  25. * {"age":13,"id":3,"name":"张3"},{"age":14,"id":4,"name":"张4"}]
  26. */
  27. String userStr = JSON.toJSONString(users);
  28. /*
  29. * 将Json字符串转换为List
  30. * result
  31. * User [id=1, name=张1, age=11]
  32. User [id=2, name=张2, age=12]
  33. User [id=3, name=张3, age=13]
  34. User [id=4, name=张4, age=14]
  35. */
  36. List<User> userList = JSON.parseArray(userStr, User.class);
  37. userList.stream().forEach(System.err::println);
  38. }
  39. /**
  40. * 测试包装类型的List转换为json字符串
  41. */
  42. @Test
  43. public void testList2String() {
  44. List<Long> longs = new ArrayList<Long>();
  45. longs.add(1L);
  46. longs.add(2L);
  47. longs.add(3L);
  48. String actual = JSON.toJSONString(longs);
  49. Assert.assertEquals("[1,2,3]", actual);
  50. }
  51. }

使用fastjson进行json字符串和List的转换相关推荐

  1. fastjson的json字符串转List

    fastjson的json字符串转List pom依赖 <dependency><groupId>com.alibaba</groupId><artifact ...

  2. 【Groovy】json 序列化 ( 类对象转为 json 字符串 | 使用 JsonBuilder 进行转换 | 使用 JsonOutput 进行转换 | 将 json 字符串格式化输出 )

    文章目录 一.Groovy 对象转为 json 字符串 ( 使用 JsonBuilder 进行转换 ) 二.使用 JsonOutput 将指定类型对象转为 json 字符串 三.将 json 字符串格 ...

  3. fastjson 返回json字符串,JSON.parse 报错

    这是由于转义字符引起的如 : \ , fastjson 处理后是双反斜杠:\\ ,而 JSON.parse 解析时需要4个反斜杠 ,即 js解析json 反斜杠时,需要 4个 解成 1 个 解决方法: ...

  4. fastjson对json字符串JSONObject和JSONArray互相转换操作示例

    package com.tapt.instance; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; ...

  5. 用 FastJSON 将 JSON 字符串转换为 Map

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 本文是利用阿里巴巴封装的FastJSON来转换json字符串的.例子如下: import com.a ...

  6. fastjson将json字符串转化为java对象

    目录 一.导入一个fastjson的jar包 二.Json字符串格式 三.根据json的格式创建Java类 四.给java类的所有属性添加setter方法 五.转换为java对象 一.导入一个fast ...

  7. FastJson之json字符串与javabean的互相转换

    1.基本使用说明 FastJson常用到一下三个类: (1)JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换. (2)JSONObject:fast ...

  8. 用FastJson将JSON字符串转Json

    一.导入jar <!--fastjson--><dependency><groupId>com.alibaba</groupId><artifac ...

  9. fastjson对json字符串JSONObject和JSONArray互相转换操作示例java

    package com.tapt.instance; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; ...

最新文章

  1. 2022-2028年中国免疫诊断行业市场前瞻与投资战略规划分析报告
  2. UI设计比较流行的插画类型和运用
  3. 生物识别最新进展:动态密码语音无监督身份认证系统通过科技成果鉴定
  4. python中filter函数的使用
  5. Android APK反编译详解(附图)(转)
  6. 启动docker容器时报错:iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT -
  7. 【翻译】Nginx的反向代理
  8. [译] 原生 JavaScript 值得学习吗?答案是肯定的
  9. error: uuid/uuid.h: No such file or directory
  10. 【开发工具之Spring Tool Suite】6、用Spring Tool Suite简化你的开发
  11. php return 变量,php内核笔记–函数返回变量return_value
  12. python判断字符类型编程_Python检测数据类型的方法总结
  13. 2021游戏市场风向标报告
  14. 理解osi参考模型分层
  15. js怎么图表在html中显示,使用Charts.js在HTML5中创建图表
  16. ul li一行两个显示
  17. ios 边录音边放_iOS 录音、音频的拼接剪切以及边录边压缩转码
  18. [转自老马的文章]用MODI OCR 21种语言
  19. 做产品,懂人性,触人心
  20. Java LocalDateTime给当前时间加半小时

热门文章

  1. 密码学专题 口令输入的方式
  2. 牛客网C++面经 类和数据抽象
  3. python3之后版本读取网页的内容
  4. mxf高速发展和数字电影母版制作技术
  5. 聊一聊 cookie
  6. 注解 @PostConstruct 与 @PreDestroy 详解及实例
  7. Java List<Object>去掉重复对象-java8
  8. eclipse搜索关键字
  9. Easyjs 细说Javascript里的 闭包(Closure)
  10. Machine Learning——octave矩阵操作(2)——DAY3