public static void test(Map<String,Object> condition){
JSONObject json = new JSONObject();
List<OfferBean> offerList = offerService.getListByCondition(condition);
List<Object> list = new ArrayList<Object>();
if(offerList!=null&&offerList.size()>0){
for(int i=0;i<offerList.size();i++){
OfferBean bean = offerList.get(i);
UserBean user = userService.getBeanByUid(bean.getUid());
json.put("id",bean.getId() );
json.put("productname",bean.getProductname() );
json.put("cityname",bean.getCityname() );
json.put("time",bean.getTime() );
json.put("address",bean.getCityname() );
json.put("grade",user.getGrade() );
list.add(json);
}
}
}
List<Object>动态添加json数据时,List中json对象内容被覆盖。
原因:
新建JSONObject放到for循环外了,只有一个json对象,地址一样,内容更换时所有对象内容都被覆盖。
解决方法:
把新建JSONObject放到for循环内。