错误出现

MyBatis用easyui写后台分页代码时,出现翻页后显示总页数错误

代码如下

可能原因在于后台mappers.xml里的sql语句错误

<select id="getProductTotal" parameterType="Map" resultType="Long">
  select count(*) from t_product
  <where>
    <if test="name!=null and name!=''">
      and name like #{name}
    </if>
  </where>
  <if test="start!=null and size!=null">
    limit #{start},#{size}
  </if>
</select>

去掉limit语句

<select id="getProductTotal" parameterType="Map" resultType="Long">
  select count(*) from t_product
  <where>
    <if test="name!=null and name!=''">
      and name like #{name}
    </if>
  </where>
</select>

controller的代码如下

@RequestMapping("/list")
public String list(@RequestParam(value="page",required=false)String page,@RequestParam(value="rows",required=false)String rows,Product product,HttpServletResponse response)throws Exception{
  PageBean pageBean = new PageBean(Integer.parseInt(page),Integer.parseInt(rows));
  Map<String,Object> map = new HashMap<String,Object>();
  map.put("name", StringUtil.formatLike(product.getName()));
  map.put("start", pageBean.getStart());
  map.put("size", pageBean.getPageSize());
  List<Product> productList = productService.productList(map);
  Long total = productService.getProductTotal(map);
  JSONObject result=new JSONObject();
  JsonConfig jsonConfig=new JsonConfig();
  jsonConfig.setExcludes(new String[]{"orderProductList"});
  jsonConfig.registerJsonValueProcessor(java.util.Date.class, new DateJsonValueProcessor("yyyy-MM-dd"));
  jsonConfig.registerJsonValueProcessor(ProductBigType.class,new ObjectJsonValueProcessor(new String[]{"id","name"}, ProductBigType.class));
  jsonConfig.registerJsonValueProcessor(ProductSmallType.class,new ObjectJsonValueProcessor(new String[]{"id","name"}, ProductSmallType.class));
  JSONArray jsonArray=JSONArray.fromObject(productList,jsonConfig);
  result.put("rows", jsonArray);
  result.put("total", total);
  ResponseUtil.write(response, result);
  return null;
}

改变后

因为前台easyui传入的数据start在变,变化前的sql语句为

SELECT COUNT(*) FROM t_product LIMIT 0,10

可以查询出总记录数
但start变化后

SELECT COUNT(*) FROM t_user LIMIT 10,10

无法查询出总记录数,所以导致出错!

easyui分页时,总页数出错的更多相关文章

  1. GridView自带分页 1总页数 首页 下一页 上一页 尾页 X 页 go 实现方法 .

    在前台GRIDVIEW中添加如下代码 <PagerTemplate> <table> <tr> <td style="text-align: rig ...

  2. mvc自定义分页(加页数的)(转)

    1.引言 在MVC开发中我们经常会对数据进行分页的展示.通过分页我们可以从服务端获取指定的数据来进行展示.这样既节约了数据库查询的时间也节约了网络传输的数据量.在MVC开发中使用的比较多的应该是MVC ...

  3. C# 返回分页查询的总页数

    /// <summary> /// 返回分页查询操作的的总页数 /// </summary> /// <param name="count">总 ...

  4. word中怎样设置页码包含总页数

    一个同事做毕业论文,论文是Word格式,1-2页是封面和目录,不需要页码,第3-10页是论文内容,需要从第1页开始显示,并显示论文内容的总页数8 页.具体为页脚处显示“第*页共*页”.他让我帮忙设置一 ...

  5. word2010页脚页码的总页数修改方法

    3很多时候做WORD文档时,首页和尾页通常是做为封面与封底的是不做页码统计的. 这时候就需要总页面上减去首页和尾页的数量.以下为修改总页数方法 1.打开WORD文档设置页眉页脚,页脚设置页码, 2.设 ...

  6. 使用CyclicBarrier+线程池,按总页数分批次开多线程执行逻辑

    通过CyclicBarrier+线程池的方式,同步的方式分页分批次并发高效处理逻辑,将总页数分成多个批次并发执行每页逻辑,每个批次处理DO_MAX_SIZE个页,每个批次等待DO_MAX_SIZE个页 ...

  7. js计算总页数

    前端js取余是a%b 取除数parseInt(a / b) /** * 总页数@param(总条数,每页总条数) */ function pageTotal(rowCount, pageSize) { ...

  8. sql计算总页数

    1 计算总页数方法: public int getTotalCount() {        Statement stmt = null;    //提交SQL语句对象stmt        Resu ...

  9. js 计算总页数的最高效方式

    js 计算总页数的最高效方式 /** * [getTotalPageNum 获取页码总数] * @param {[type]} totalRecord [总记录] * @param {[type]} ...

随机推荐

  1. 对Java提供的锁机制的一些思考

    Java的数据会在CPU.Register.Cache.Heap和Thread stack之间进行复制操作,而前面四个都是在Java Threads之间共享,因此Java的锁机制主要用于解决Racin ...

  2. logging日志模块,四种方式

    1.最简单的用法 import logging logging.error("hah") logging.info("hah") logging.debug(& ...

  3. 如何完整反编译AndroidMainfest.xml

    下载工具: http://code.google.com/p/android4me/downloads/detail?name=AXMLPrinter.zip&can=2&q= 包名为 ...

  4. luogu2604 [ZJOI2010]网络扩容

    先做一遍普通的dinic 然后再更改源点为超级源,超级源向原源加一条capacity=k && cost=0的边,再加上有费用的边跑最小费用最大流 #include <iostr ...

  5. Silverlight客户端加载DWG图纸方案

    前段时间一直再研究怎么才能在Silverlight客户端加载 DWG图纸,ArcGIS API For Silverlight中可以加载Shp文件,但是不能加载DWG,最后想出了一个方法步骤如下: 1 ...

  6. WordPress登录框显示/隐藏输入的密码

    直接让用户自行根据需要选择是全部隐藏输入的密码,还是全部显示输入的密码. 在全部显示密码框的内容时,用户输错的可能性就大大降低,这也是微软推荐的一种密码框处理方式.效果如下: 今天,我将给大家介绍,在 ...

  7. 图论trainning-part-1 F. Highways

    F. Highways Time Limit: 1000ms Memory Limit: 10000KB 64-bit integer IO format: %lld      Java class ...

  8. NYOJ 722 数独

    数独 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一 ...

  9. 九度oj 题目1209:最小邮票数

    题目描述: 有若干张邮票,要求从中选取最少的邮票张数凑成一个给定的总值.    如,有1分,3分,3分,3分,4分五张邮票,要求凑成10分,则使用3张邮票:3分.3分.4分即可. 输入: 有多组数据, ...

  10. 解决mybatis xml文件代码提示

    今天在开源项目社区看到一个插件挺不错的,推荐给大家.叫MyBatis MyBatis 是一个流行的 Java 数据持久层框架.MyBatipse 是一个 Eclipse 插件,在编辑 MyBatis ...