@Controller("signAction") @Scope("prototype") public class SignAction implements ModelDriven<Sign> { private Sign sign; @Resource(name = "signService") private SignService signService; private String rows;// 每页显示的记录数 private String page;// 当前第几 @Override public Sign getModel() { if (sign != null) { sign = new Sign(); } return sign; } /** * 作者: * 功能:跳转页面 */ public String showSigns() { return "showSign"; } /** * 作者: * 功能:页面加载json数据 * * @throws IOException */ @SuppressWarnings("unchecked") public void signJson() throws IOException { List<Sign> signList = signService.showAllSignsByPage(page, rows); //这是防止死循环必须的 for (Sign sign : signList) { sign.getDesk().setSigns(null); sign.getStyle().setSigns(null); } long count = signService.getCount(); Map<String,Object> map = new HashMap<String,Object>(); map.put("rows", signList); map.put("total", count); // {"$ref":"$.rows[0].style"} 解除循环引用 :SerializerFeature.DisableCircularReferenceDetect; String json = JSON.toJSONString(map,SerializerFeature.DisableCircularReferenceDetect); System.out.println(map); ServletActionContext.getResponse().getWriter().write(json); } public String getRows() { return rows; } public void setRows(String rows) { this.rows = rows; } public String getPage() { return page; } public void setPage(String page) { this.page = page; } }
|
|