java中String字符串、Json字符串、对象的转换

本文介绍了在Controller中如何使用@RequestBody和String注解接收JSON数据,详细展示了转换过程,包括从JSON字符串到JSONObject,再到List<InventoryDTO>对象的转换步骤。同时,指出了在尝试直接用JSONObject接收时遇到的错误,提醒开发者注意正确的数据转换方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Controller 用@RequestBody 和String 来接受数据

public ResultJson validateInventury(@RequestBody String jsonObject)
参数

{“inventoryDTOs”:[{
“type”: 0,
“saleQuantity”: 188.0000,
“basePrice”:1000.00,
“salePrice”: 3000.00,
“inventoryId”: 35
}, {
“type”: 0,
“saleQuantity”: 949.0000,
“basePrice”:200.00,
“salePrice”: 300.00,
“inventoryId”: 28
},{
“type”: 1,
“saleQuantity”: 94.0000,
“basePrice”:200.00,
“salePrice”: 1000.00,
“inventoryId”: 326
}
]}

转换:

JSONObject jsonObject = JSONObject.parseObject(jsonObject);  //json字符串转换成jsonobject对象。 

String versionInfoStr = jsonObject.getString(“inventoryDTOs”);//通过key获取值
List inventoryDTOs = JSON.parseArray(versionInfoStr, InventoryDTO.class);//将json字符串转换成list
特别注意,当时以为外面可以用JSONObject接收,省掉了转换第一步,结果在转换的时候回报错。

拓展:string转换成json字符串
String json_str = JSON.toJSONString(string字符串);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值