package com.kmall.common.utils; import com.kmall.common.xss.SQLFilter; import java.util.LinkedHashMap; import java.util.Map; /** * 查询参数 * * @author Scott * @email * @date 2017-03-14 23:15 */ public class Query extends LinkedHashMap { private static final long serialVersionUID = 1L; //当前页码 private int page; //每页条数 private int limit = 20; public Query(Map params) { this.putAll(params); //分页参数 Object page = params.get("page"); Object limit = params.get("limit"); this.page = page == null ? 1 :Integer.parseInt(page.toString()); this.limit = limit == null ? this.limit :Integer.parseInt(limit.toString()); this.put("offset", (this.page - 1) * this.limit); this.put("page", this.page); this.put("limit", this.limit); //防止SQL注入(因为sidx、order是通过拼接SQL实现排序的,会有SQL注入风险) String sidx = null != params.get("sidx") ? params.get("sidx").toString() : ""; String order = null != params.get("order") ? params.get("order").toString() : ""; this.put("sidx", SQLFilter.sqlInject(sidx)); this.put("order", SQLFilter.sqlInject(order)); } public int getPage() { return page; } public void setPage(int page) { this.page = page; } public int getLimit() { return limit; } public void setLimit(int limit) { this.limit = limit; } }