在使用Layui数据表格时,url数据接口,要求返回的数据格式为:
{
"code": 0,
"msg": "",
"count": 1000,
"data": [{}, {}] //data中,存放对象集合
}
普通Java对象的JSON格式为:
//java对象集合JSON格式
[{
"c_id": 1,
"c_classid": 141,
"c_classname": "生物",
"c_counsellor": "徐超",
"students": null
}, {
"c_id": 2,
"c_classid": 151,
"c_classname": "应化",
"c_counsellor": "刘晨",
"students": null
}, {
"c_id": 3,
"c_classid": 142,
"c_classname": "土木",
"c_counsellor": "孙玲",
"students": null
}]
这时我们就需要转换一下:
public class LayuiUtil extends HashMap<String, Object> {
public static LayuiUtil data(Integer count, List<?> data){
LayuiUtil r = new LayuiUtil();
r.put("code", 0);
r.put("msg", "");
r.put("count", count);
r.put("data", data);
return r;
}
}
在控制器中返回数据前转换:
/**
* 查询班级列表
* @return
*/
@RequestMapping("/findAll")
@ResponseBody
public LayuiUtil findAll(){
List<Class> list = classDao.findAll();
int count = list.size();
return LayuiUtil.data(count,list);
}
这时数据表就可正常显示