u011112545 2016-12-31 05:51 采纳率: 0%
浏览 3517

SpringMVC页面Ajax传JSON到controller,返回包含多个对象的JSON

做的一个练习,筛选,页面随意勾选多个复选框,局部刷新返回显示与复选框value值匹配的对象数据,传JSON到controller,返回包含多个对象的JSON。controller怎么写?返回JSON后页面怎么处理

$.ajax({
url:"user/screening",

type:"post", //请求方式
data:"{\"pwd1\":\""+pwd1+"\",\"pwd2\":\""+pwd2+"\",\"email1\":\""+email1+"\",\"email2\":\""+email2+"\"}",//要发送的数据
dataType:"", //服务器返回的数据类型
//data返回的数据,strStatus状态码(200响应正确),xhr:XMLHttpRequest对象
success:function(data,strStatus,xhr){ //请求成功返回数据后执行的代码
eval("var mydata="+data); //eval()将字符串当成JS脚本执行
$.each(mydata,function(i,item){ //i:遍历的下标,item:遍历出的单个对象
$("#show").html(item.id+item.username+item.password+item.email);
});
},
error:function(xhr,strStatus,strError){ //请求失败后执行的代码
alert(strError);
}
});

public UserController(){
userMap.put("1", new User("1","yiyiyi","123456","yiyiyi@qq.com"));
userMap.put("2", new User("2","ererer","123456","ererer@qq.com"));
userMap.put("3", new User("3","sansansan","123456","sansansan@qq.com"));
userMap.put("4", new User("4","yiyiyi","654321","yiyiyi@qq.com"));
userMap.put("5", new User("5","ererer","654321","ererer@qq.com"));
userMap.put("6", new User("6","sansansan","654321","sansansan@qq.com"));
}

@RequestMapping(value="screening",method=RequestMethod.POST)
@ResponseBody
public Object screening(@RequestBody Object object){

    JSONObject jo = JSONObject.fromObject(toString());
    List<Object> objects = new ArrayList<Object>();
    Screening scr = (Screening)JSONObject.toBean(jo, Screening.class);
    Iterator<Map.Entry<String, User>> iter = userMap.entrySet().iterator(); 
        while(iter.hasNext()){
            Map.Entry<String, User> entry = iter.next();
            if(scr.getPwd1().equals(entry.getValue().getPassword())
               || scr.getPwd2().equals(entry.getValue().getPassword())
               || scr.getEmail1().equals(entry.getValue().getEmail())
               || scr.getEmail2().equals(entry.getValue().getEmail())){
                objects.add(userMap.get(entry.getKey()));
            }
        }
    return objects;
}

public class Screening {

String pwd1;
String pwd2;
String email1;
String email2;
  • 写回答

1条回答 默认 最新

  • Kindle_code 2016-12-31 06:59
    关注

    可以用有个list存放再转为json传递

    评论

报告相同问题?

悬赏问题

  • ¥15 vue2(标签-chrome|关键词-浏览器兼容)
  • ¥15 python网络流自动生成系统 医学领域
  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题
  • ¥15 机器学习教材中的例题询问
  • ¥15 求.net core 几款免费的pdf编辑器
  • ¥15 为什么安装HCL 和virtualbox之后没有找到VirtualBoxHost-OnlyNetWork?