weixin_43809960
weixin_43809960
2018-12-12 11:36

SSM:使用limit查询分页的时候,为什么其他数据为null,但是有两条数据?

  • ssm:使用limit分页

图片说明
xml里面代码

<!--  查询用户记录总数 -->
<select id="selectCount" resultType="int">
    select count(*) from user
</select>

<!-- 根据分页数据start和size查询数据 -->
<select id="findByPage" parameterType="Map" resultType="com.jiuxing.liudianlu.pojo.User">
    select * from user
    <if test="start!=null and size!=null">
        limit #{start},#{size}
    </if>

</select>

UserServisImpl里面代码

@Override
public PageInfo findByPage(int nowPage) {
HashMap map=new HashMap();
PageInfo page=new PageInfo();
//封装当前页数
page.setNowPage(nowPage);
//设置每页显示的数据
int pageSize=3;
page.setPageSize(pageSize);
//设置总记录数量
int totalCount=userMapper.selectCount();
page.setTotalCount(totalCount);
System.out.println(totalCount);
//设置总页数
double tc=totalCount;
Double num=Math.ceil(tc/pageSize); //若最后一面显示不满,需向上取整
page.setTotalPage(num.intValue());

    map.put("start", (nowPage-1)*pageSize);
    map.put("size", page.getPageSize());
    List<User> lists=userMapper.findByPage(map);
    for(int i=0;i<lists.size();i++){
        User example = lists.get(i);//获取每一个Example对象
        String name = example.getUserName();
        System.out.print("第"+i+"个=?"+name);
    }
    page.setLists(lists);
    System.out.println(page);
    return page;
}
  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

2条回答