数据表中一json类型的字符串:[{“id”:86615095, “nick”:”纯纯”,”name”:”梦1”, “amount”:1055859 }, { “id”:23132413, “nick”:”你真美”,”name”:”梦2”, “amount”:299136 }, { “id”:74235189, “nick”:”小呀小”,”name”:”梦3”, “amount”:245054 }]
其实这是同事为了方便使用放到数据表中的,现在需要将其分别在页面展示。
import net.sf.json.JSONArray;
public class Test{
//在实际项目中这是从数据表中的一个字段,不需要这样麻烦
String json = "[{\"id\":86615095,\"nick\":\"纯纯\",\"name\":\"梦1\",\"amount\":1055859},"
+ "{\"id\":23132413,\"nick\":\"你真美\",\"name\":\"梦2\",\"amount\":299136},"
+ "{\"id\":74235189,\"nick\":\"小呀小\",\"name\":\"梦3\",\"amount\":245054}]";
JSONArray jsonArray = JSONArray.fromObject(json);
List> listMap = jsonArray;
List> list = new LinkedList<>();
//定义一个newMap存放新的key和value
Map newMap = new HashMap<>();
for(int i = 0; i < listMap.size(); i++) {
Map map = listMap.get(i);
for(Entry entry : map.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
// 这里重命名key,因为几个id等都是一样的,为了区分
key = key + (i+1);
System.out.println(key + "\t" + value);
newMap.put(key, value);}list.add(i, newMap);
}
list.add(i, newMap);
}
}
注:上述使用net.sf.json.JSONArray需要其余jar包支持,使用时另行百度。