因为业务需求,我需要给客户端提供json格式的字符串,我以前都是用springmvc自带的注解@ResponseBody直接转换json,查询是list就是json数组,是object就是json对象。但是我发现这样不灵活,因为对象里可能有多个字段,但是客户端不需要那么多,并且我还用了hibernate,很不灵活,所有的字段都转换成json的键值对返回到客户端
了。今天只要介绍net.sf.json.JSONArray和net.sf.json.JSONObject的删除指定键值对的方法。
json对象删除指定的键:
JSONObject jsonObject = JSONObject.fromObject(map);
JSONObject jsonObject2 = jsonObject.discard("name1"); name1为指定的键。
json数组删除指点的对象:
JSONArray jsonArray = JSONArray.fromObject(list);
JSONArray jsonArray2 = jsonArray.discard(0);
json数据删除对象里指点的键:
JSONArray jsonArray = JSONArray.fromObject(list);
JSONArray jsonArray1 = new JSONArray();
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.get(i);
JSONObject jsonObject2 = jsonObject.discard("name1");
jsonArray1.add(jsonObject2);
}