map转json格式的返回一个数组的格式

本文介绍如何将Map转换为JSON格式,特别是如何将Map转换为JSONArray对象。通过使用JSONArray.fromobject方法,可以实现List对象到JSONArray的转换。然而,对于Map对象,需要使用JSONObject.fromobject,但请注意此方法不适用于Action中的属性。

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

今天写接口,返回的数据是一行,但是要返回的是一个列表。我直接返回map,如果是
多条数据,会覆盖map里面的key值.仍然是一行。返回列表需要把map放在list里面,然后在放在

新的map里面,把map转换成json格式返回。

JSONArray.fromobject(只能转换list对象)

JSONObject.fromobject(括号中是bean或者是map对象,不能是action中的属性)

调用方法查询数据库返回一个List,需要在Servlet中返回的是用户名,id,卡号的列表,
1)声明List<Person> personList = new ArrayList<Person>();
       List<Map<String, Object>> psnList = new ArrayList<Map<String, Object>>();
   把Map放在List中
2)通过for循环去遍历List
for (int i = 0; i < personList.size(); i++) {
Map<String, Object> tempMap = new HashMap<String, Object>();
Person person = (Person) personList.get(i);
tempMap.put("psnId", person.getPsnid());
tempMap.put("loginName", person.getLoginname());
tempMap.put("psnName", person.getPsnname());
psnList.add(tempMap);
}
    然后把这个临时的map放在list里面;
3) 最后把psnList放在新的returnMap里面,返回map
   新的Map -->  Map<String, Object> returnMap = new HashMap<String, Object>();
   returnMap.put("returnMsg", psnList);
4) 返回一个列表,需要把map转换成Json
   out.println(JsonMaps.parseMapToJson(returnMap));
5)parseMapToJson实现的方法
public static String parseMapToJson(Map<String, Object> map) {
String json = null;
JSONArray jsonArray = JSONArray.fromObject(map);
json = jsonArray.toString();
return json;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值