加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用FastJSON,将对象或数组和JSON串互转

发布时间:2020-12-16 19:38:29 所属栏目:百科 来源:网络整理
导读:Fastjson,是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库。 其开源的下载网址为:https://github.com/alibaba/fastjson。 示例代码如下: [java] view plain copy package test; import java.util.ArrayList; import java.util.List; import com
Fastjson,是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库。
其开源的下载网址为:https://github.com/alibaba/fastjson。

示例代码如下:

[java] view plain copy
  1. packagetest;
  2. importjava.util.ArrayList;
  3. importjava.util.List;
  4. importcom.alibaba.fastjson.JSON;
  5. classUser{
  6. privateStringname;
  7. privateintage;
  8. publicStringgetName(){
  9. returnname;
  10. }
  11. publicvoidsetName(Stringname){
  12. this.name=name;
  13. }
  14. publicintgetAge(){
  15. returnage;
  16. }
  17. publicvoidsetAge(intage){
  18. this.age=age;
  19. }
  20. @Override
  21. publicStringtoString(){
  22. return"User[name="+name+",age="+age+"]";
  23. }
  24. };
  25. classUserGroup{
  26. privateStringname;
  27. privateList<User>users=newArrayList<User>();
  28. publicStringgetName(){
  29. returnname;
  30. }
  31. publicvoidsetName(Stringname){
  32. this.name=name;
  33. }
  34. publicList<User>getUsers(){
  35. returnusers;
  36. }
  37. publicvoidsetUsers(List<User>users){
  38. this.users=users;
  39. }
  40. @Override
  41. publicStringtoString(){
  42. return"UserGroup[name="+name+",users="+users+"]";
  43. }
  44. }
  45. classFastJsonTest{
  46. publicstaticvoidmain(String[]args){
  47. //构建用户geust
  48. UserguestUser=newUser();
  49. guestUser.setName("guest");
  50. guestUser.setAge(28);
  51. //构建用户root
  52. UserrootUser=newUser();
  53. rootUser.setName("root");
  54. guestUser.setAge(35);
  55. //构建用户组对象
  56. UserGroupgroup=newUserGroup();
  57. group.setName("admin");
  58. group.getUsers().add(guestUser);
  59. group.getUsers().add(rootUser);
  60. //用户组对象转JSON串
  61. StringjsonString=JSON.toJSONString(group);
  62. System.out.println("jsonString:"+jsonString);
  63. //JSON串转用户组对象
  64. UserGroupgroup2=JSON.parSEObject(jsonString,UserGroup.class);
  65. System.out.println("group2:"+group2);
  66. //构建用户对象数组
  67. User[]users=newUser[2];
  68. users[0]=guestUser;
  69. users[1]=rootUser;
  70. //用户对象数组转JSON串
  71. StringjsonString2=JSON.toJSONString(users);
  72. System.out.println("jsonString2:"+jsonString2);
  73. //JSON串转用户对象列表
  74. List<User>users2=JSON.parseArray(jsonString2,User.class);
  75. System.out.println("users2:"+users2);
  76. }
  77. }

输出如下:

[html] view plain copy
  1. jsonString:{"name":"admin","users":[{"age":35,"name":"guest"},{"age":0,"name":"root"}]}
  2. group2:UserGroup[name=admin,users=[User[name=guest,age=35],User[name=root,age=0]]]
  3. jsonString2:[{"age":35,"name":"root"}]
  4. users2:[User[name=guest,age=0]]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读