JSON转对象、List

前后台交互一般使用json进行传值,前台传的json需要在后台转换成需要的对象。
如果手动转换就显得太不优雅,并且还麻烦,所以就要用到json转对象
json转对象:
当前台传过来的值是一个Map时,我们首先需要把Map转成json字符串,然后在把json字符串转换成对象
1.map转json字符串
String jsonStr = JSON.toJSONString(myMap);
2.json字符串转对象
MyObject myObject = JSON.parseObject(jsonStr ,  MyObject .class);
可以把两个步骤写在一起:
MyObject myObject = JSON.parseObject(JSON.toJSONString(myMap),  MyObject .class);

json转List:
1.list转json字符串
String jsonStr = JSONArray.fromObject(myList).toString();
2.json字符串转List
List<MyObjcet> myObjectList = JSON.parseArray(jsonStr , MyObjcet.class);
同样如果合并步骤:
List<MyObjcet> orderVOList = JSON.parseArray(JSONArray.fromObject(myObjectList ).toString(), MyObjcet.class);

### 如何将JSON数据转换对象列表 在 Java 中,可以使用 Jackson 库来实现 JSON 数据到对象列表的转换。以下是具体方法: #### 使用 Jackson 进行 JSON对象列表的转换 Jackson 是一个强大的库,能够轻松完成 JSON 和 Java 对象之间的相互转换。通过 `ObjectMapper` 类及其相关功能,可以方便地解析复杂的 JSON 结构并将其映射为目标类型的集合。 以下是一个完整的代码示例,展示如何将 JSON 数据转换对象列表[^1]: ```java import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; import java.util.List; public class JsonToListExample { static class User { private String name; private int age; // Getters and Setters public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "User{name='" + name + "', age=" + age + "}"; } } public static void main(String[] args) throws IOException { String jsonString = "[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\",\"age\":25}]"; ObjectMapper objectMapper = new ObjectMapper(); List<User> userList = objectMapper.readValue(jsonString, new TypeReference<List<User>>() {}); System.out.println(userList); } } ``` 在这个例子中: - 首先定义了一个简单的 `User` 类作为目标类型。 - 接着创建了一条模拟的 JSON 字符串 `jsonString` 表示多个用户的数组。 - 使用 `ObjectMapper` 的 `readValue` 方法,并指定其返回类型为 `List<User>` 来完成转换操作。 #### Python中的解决方案 如果你是在Python环境下工作,则可利用内置模块`json`来达成同样的目的。下面给出一段示范程序说明怎样把JSON资料变换成物件清单[^3]: ```python import json # 原始JSON字符串 json_string = '[{"name":"小明","age":28},{"name":"李华","age":22}]' # 将JSON字符串转换成Python的对象(这里是列表) data_list = json.loads(json_string) print(data_list) # 输出: [{'name': '小明', 'age': 28}, {'name': '李华', 'age': 22}] ``` 此段脚本里头我们采用了`json.loads()`函数从JSON编码的数据构建出相应的Python结构体——在这里即成为包含字典形式成员的一个列表[^3]。 #### JavaScript环境下的解决办法 对于前端开发者来说,在JavaScript环境中可以直接运用`JSON.parse()`这个API来做类似的化作业[^2]: ```javascript let jsonData = '[{"name":"张三","score":95},{"name":"王五","score":87}]'; let studentArray = JSON.parse(jsonData); console.log(studentArray); // 打印结果:[{name:"张三", score:95}, {name:"王五", score:87}] ``` 这里展示了借助于`JSON.parse()`命令快速解读JSON文本串进而获取一组学生记录的过程。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值