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

Fastjson,是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库。
其开源的下载网址为:https://github.com/AlibabaTech/fastjson

示例代码如下:

[java] view plaincopy

  1. package test;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import com.alibaba.fastjson.JSON;
  5. class User {
  6. private String name;
  7. private int age;
  8. public String getName() {
  9. return name;
  10. }
  11. public void setName(String name) {
  12. this.name = name;
  13. }
  14. public int getAge() {
  15. return age;
  16. }
  17. public void setAge(int age) {
  18. this.age = age;
  19. }
  20. @Override
  21. public String toString() {
  22. return "User [name=" + name + ", age=" + age + "]";
  23. }
  24. };
  25. class UserGroup {
  26. private String name;
  27. private List<User> users = new ArrayList<User>();
  28. public String getName() {
  29. return name;
  30. }
  31. public void setName(String name) {
  32. this.name = name;
  33. }
  34. public List<User> getUsers() {
  35. return users;
  36. }
  37. public void setUsers(List<User> users) {
  38. this.users = users;
  39. }
  40. @Override
  41. public String toString() {
  42. return "UserGroup [name=" + name + ", users=" + users + "]";
  43. }
  44. }
  45. class FastJsonTest {
  46. public static void main(String[] args) {
  47. // 构建用户geust
  48. User guestUser = new User();
  49. guestUser.setName("guest");
  50. guestUser.setAge(28);
  51. // 构建用户root
  52. User rootUser = new User();
  53. rootUser.setName("root");
  54. guestUser.setAge(35);
  55. // 构建用户组对象
  56. UserGroup group = new UserGroup();
  57. group.setName("admin");
  58. group.getUsers().add(guestUser);
  59. group.getUsers().add(rootUser);
  60. // 用户组对象转JSON串
  61. String jsonString = JSON.toJSONString(group);
  62. System.out.println("jsonString:" + jsonString);
  63. // JSON串转用户组对象
  64. UserGroup group2 = JSON.parseObject(jsonString, UserGroup.class);
  65. System.out.println("group2:" + group2);
  66. // 构建用户对象数组
  67. User[] users = new User[2];
  68. users[0] = guestUser;
  69. users[1] = rootUser;
  70. // 用户对象数组转JSON串
  71. String jsonString2 = 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 plaincopy

    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":"guest"},{"age":0,"name":"root"}]
    4. users2:[User [name=guest, age=35], User [name=root, age=0]]

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

时间: 2024-07-28 23:31:01

使用FastJSON,将对象或数组和JSON串互转的相关文章

iOS 字典或者数组和JSON串的转换

在和服务器交互过程中,会iOS 字典或者数组和JSON串的转换,具体互换如下: // 将字典或者数组转化为JSON串 + (NSData *)toJSONData:(id)theData { NSError *error = nil; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:theData options:NSJSONWritingPrettyPrinted error:nil]; if ([jsonData leng

JAVA对象、数组转JSON

1.需要库: commons-beanutils-1.7.0.jar commons-collections-3.1.jar commons-lang-2.1.jar commons-logging-1.1.3.jar ezmorph-1.0.2.jar json-lib-2.4-jdk15.jar 2.转换方法: //对象转json sqlModel model = new sqlModel(); model.setAge(18); model.setHeight(188.0); model.

Java 对象,数组 与 JSON 字符串 相互转化

当 Java 对象中包含 数组集合对象时,将 JSON 字符串转成此对象. public class Cart{} public class MemberCoupon{} public class CartGroup { private List<Cart> carts = new ArrayList<Cart>(); // 购物车列表 private List<MemberCoupon> coupons = new ArrayList<MemberCoupon&

java对象与json串互转

1:java对象与json串转换: java对象—json串: JSONObject JSONStr = JSONObject.fromObject(object); String str = JSONStr.toString(); json串—java对象: JSONObject jsonObject = JSONObject.fromObject( jsonString ); Object pojo = JSONObject.toBean(jsonObject,pojoCalss); 2:j

字典或者数组与JSON串之间的转换

// 将字典或者数组转化为JSON串 + (NSData *)toJSONData:(id)theData { NSError *error = nil; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:theData options:NSJSONWritingPrettyPrinted error:nil]; if ([jsonData length]&&error== nil){ return jsonData; }

json串与java对象互转

Json与Bean互转,Timestamp类型的问题:http://blog.csdn.net/luckdog_hot/article/details/7880876 1)将java单个对象装换成json串 2)将java集合对象转换成json串 3:将json串装换成java单个对象 4)将json串装换成java集合对象

js 数组转json,json转数组

//数组转json串 var arr = [1,2,3, { a : 1 } ]; JSON.stringify( arr ); //json字符串转数组 var jsonStr = '[1,2,3,{"a":1}]'; JSON.parse( jsonStr );

json对象,数组,字符串总结

关于json对象,数组,字符串的总结 什么是json? JSON(JavaScript Object Notation)  一种轻量级的数据交换格式,JSON采用完全独立于语言的文本格式...(来自百度百科) json对象,json数组,json字符串 json字符串就是一个String类型的字符串,不过是json格式的... json对象 {} 在json中,{}里的内容代表的是对象 json数组 []  在json中,[]里的内容代表的是对象 ----- 未完---待续-----

PHP中json_encode()使用须知,JSON数组和JSON对象

body { font: 12px/1.5 Tahoma, Arial, Helvetica, sans-serif } ? 偷偷的告诉你,这是一个很不谨慎就会踩得坑 ?  如下代码 (看了一下很简单,没毛病啊,老铁) $arr = array( '0'=>'a','1'=>'b','2'=>'c','3'=>'d' ); echo json_encode($arr); 但是结果是 ["a","b","c","d