spring 3 mvc 返回json实体

最近在做基于spring 3 mvc 框架的项目,发现不用strut2也能做到异步请求然后返回json格式的数据。多说无益,还是贴上代码吧。
这个是control部分的代码

@RequestMapping("/querynum.do")
@ResponseBody //这个表示返回json
public Map<String,Object> queryCodecreateNum(HttpServletRequest request,HttpServletResponse response,
@RequestParam(value="createnum",required=false) String createnum,
HttpSession session, Model model) {
int creatindex=0;
Map<String,Object> map=new HashMap<String, Object>();
if(StringUtils.isEmpty(createnum)){
int[] array=this.wandadao.queryCreateNum();
if (array!=null && array.length>0) {
map.put("createnums", array);
creatindex=array[0];
}
}else {
creatindex=Integer.parseInt(createnum);
}
List<CreateNumBean> list=this.wandadao.queryCodeStartEndTime(creatindex);
map.put("createlist", list);

return map;
}


前端取值的部分
$("#editbtn").click(function(data){
$.post("querynum.do",null,function(data){
var arr=data.createnums; //直接取出数组,object类型
var num=data.createnums.length;
if(typeof(data.createnums)!=undefined){
//用each遍历这个Object,it是数值
$.each(data.createnums,function(i,it){
var option="<option value='"+it+"'>"+it+"</option>";
$("#edit-createnum").append(option);
});
var value=$("#edit-createnum").attr('selected', 'selected').val();
//createlist是一个泛型集合,item代表的是泛型实体对象,可以用item直接点实体的属性取值
$.each(data.createlist,function(i,item){
var txt="<li><p>"+item.counts+"个券码,当前生效时间:<input id=\"beign"+i+"\" type=\"text\" style=\"width: 120px;\" value=\""+item.starttime+"\" onfocus=\"showDate(0)\" >"+
"当前结束时间:<input id=\"end"+i+"\" type=\"text\" style=\"width: 120px;\" value=\""+item.endtime+"\" onfocus=\"showDate('beign"+i+"')\" >"+
"<input name=\"hidb"+i+"\" type=\"hidden\" value=\""+item.starttime+"\"><input name=\"hide"+i+"\" type=\"hidden\" value=\""+item.endtime+"\">"+
"<input type=\"button\" value=\"修改\" onclick=\"submitUp('"+i+"','"+value+"')\"></p><li>";
$("#editcard ul").append(txt);
});
}
},"json");//post最后一个参数一定要用"json",不然对象就取不出来了

});

在前端取值的时候还有一种方式,使用js的for循环,不过对于泛型集合取值时候需要多重循环,没有each好用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值