zoukankan      html  css  js  c++  java
  • easyUI datagrid 分页参数page和rows

    Struts2获取easyUI datagrid 分页参数page和rows

    用pageHelper分页时,只要是能够获取前台传来的两个参数page和rows基本就完成了很大一部分。

    获取方法:定义两个变量page和rows,设置对应的getter,setter方法,在方法中直接获取就能打得。easyUI默认的每次请求时都会传递这两个参数。

    1. public int getPage() {  
    2.         return page;  
    3.     }  
    4.   
    5.     public void setPage(int page) {  
    6.         this.page = page;  
    7.     }  
    8.   
    9.     public int getRows() {  
    10.         return rows;  
    11.     }  
    12.   
    13.     public void setRows(int rows) {  
    14.         this.rows = rows;  
    15.     }  


    1. public String getAllPages() {     
    2.         List<Emp> plist = empDao.findAll();  
    3.         PageHelper.startPage(page, rows);  
    4.         List<Emp> elist = empDao.findAll();  
    5.         // 判断  
    6.         if (elist.size() > 0) {  
    7.             map.put("total", plist.size());  
    8.             map.put("rows", elist);  
    9.             return SUCCESS;  
    10.         }  
    11.         return ERROR;  
    12.     }  
    13.       


    返回的数据必须转成json格式

      1. <!-- 配置查询所有方法Action -->  
      2.         <action name="listAction" class="EmpAction" method="getAllPages">  
      3.             <result name="success" type="json">  
      4.                 <param name="root">map</param>  
      5.             </result>  
      6.         </action

    springmvc

    page,rows分页请求参数,rows和total结果参数

    @RequestMapping(value = "/getSalaryList.rst", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public Object getSalaryList (int page,int rows,@RequestParam(value="key",required=false) String key){
    ICoreRequestContext ctx = CoreRequestContextUtil.getCoreRequestContext();
    SSOUser ssoUser = ctx.getCurrentUser();
    if (ssoUser.isAnonymous()) {
    //return new Result(ResultCode.ERROR.getCode(),"用户未登录");
    return alertError("用户未登录!");
    }
    HiberSession dbSession = null;
    /* LostPropPermissionChecker.checkPermission(this.getAccessContext());*/
    try {
    dbSession = (HiberSession) CoreplusEnv.getDBSessionFactory().getDBSession();
    dbSession.beginTransaction();
    Map<String, Object> params = new HashMap<String, Object>();//参数集合
    if(!StringUtil.isEmpty(key)){
    params.put("key", "%"+key+"%");
    }
    params.put("begin", page-1);
    params.put("length", rows);
    LightAppDBUtil _dbUtil = LightAppDBUtil.getInstance();
    Query query = _dbUtil.parserNamedQuery(dbSession, "getSalaryList", params);
    //转译成需要的类Salary
    ResultTransformer rt = Transformers.aliasToBean(Salary.class);
    List<Salary> salaryList = query.setResultTransformer(rt).list();
    JSONObject result= new JSONObject();
    if (salaryList == null || salaryList.isEmpty()) {
    result.put("total", 0);
    result.put("rows", salaryList);
    return result;
    }
    int total=inquiryTotal();
    // jo.put("errMsg", "");
    result.put("rows", salaryList);
    result.put("total", total);
    // return new DataGridVO(total,salaryList);
    return result;
    } catch (Exception e) {
    _log.error("查询工资列表失败!", e);
    dbSession.rollback();
    return alertError("查询工资列表异常");
    } finally {
    closeSession(dbSession);
    }

    }

  • 相关阅读:
    npm 插件发布和使用
    git 配置与删除远程地址
    elment 编辑输出行数据后,过滤下拉,值必须全等于下拉值
    后台 接口 传值 不同类型的详细解说
    Vue vscode调试
    vue 标题和输入框分两行,调成一行
    ES6 学习笔记(持续更新中)
    vue开发WebApp 开发笔记(持续更新)
    移动端自适应方案 对应设计图制作
    css 颜色使用预览 码表
  • 原文地址:https://www.cnblogs.com/keyi/p/6425385.html
Copyright © 2011-2022 走看看