jeecg后台List<Map<String,Object>>对象前台easyui展现

来源:互联网 发布:软件测试表情包 编辑:程序博客网 时间:2024/06/08 20:02

List<Map<String,Object>>对象直接在前台展现格式化js不太好用,因此需要后台先转换成类似json的字符串再到前台reload

AjaxJson类


package org.framework.core.common.model.json;import java.util.List;import java.util.Map;import com.alibaba.fastjson.JSONObject;/** * $.ajax后需要接受的JSON *  * @author *  */public class AjaxJson {private boolean success = true;// 是否成功private String msg = "操作成功";// 提示信息private Object obj = null;// 其他信息private Map<String, Object> attributes;// 其他参数private List<Map<String, Object>> listMap;// 其他参数public Map<String, Object> getAttributes() {return attributes;}public void setAttributes(Map<String, Object> attributes) {this.attributes = attributes;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public Object getObj() {return obj;}public void setObj(Object obj) {this.obj = obj;}public boolean isSuccess() {return success;}public void setSuccess(boolean success) {this.success = success;}public String getJsonStr(){JSONObject obj = new JSONObject();obj.put("success", this.isSuccess());obj.put("msg", this.getMsg());obj.put("obj", this.obj);obj.put("attributes", this.attributes);obj.put("listMap", this.listMap);return obj.toJSONString();}public List<Map<String, Object>> getListMap() {return listMap;}public void setListMap(List<Map<String, Object>> listMap) {this.listMap = listMap;}}


之前该类没有listMap对象,根据需要新增的


jeecg中使用CommonServiceImpl方法的findForJdbc(sql)可以获得List<Map<String,Object>>对象,后台其实很简单

将获取到的List<Map<String,Object>>填充到AjaxJson对象中即可

AjaxJson ajaxJson = new AjaxJson();ajaxJson.setListMap(handlerService.waitingClaimList());request.setAttribute("waitingClaimList",ajaxJson.getJsonStr());

可以在前台把获取到的字符串放在例如一个span中

<span id="waitingClaimList" hidden="true">${waitingClaimList}</span>

js处理

var json = JSON.parse($("#waitingClaimList").html());$("#dg").datagrid('loadData',{'total':json.listMap.length,rows:json.listMap});


完毕