# Mybatis+Layui分页实现


效果如下:
在这里插入图片描述

  1. 分页结果类
package com.li.thesismanagement.utils;
public class ResultVo {

    private int code;
    private String msg;
    private int count = 0;
    private Object data;

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public int getCount() {
        return count;
    }

    public void setCount(int count) {
        this.count = count;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }
}
  1. 实现的方法
 @Override
    public List<Teacher> listAll(int currPage,int pageSize) {
        List<Teacher> teachers = teacherMapper.selectAll();
        int count=teacherMapper.selectCount();
        int first = (currPage - 1) * pageSize;
        int last = currPage * pageSize;
        if(last>count){
            last=count;
            if(count<pageSize) {
                List<Teacher> teachers1 = teachers.subList(first, count);
                return teachers1;
            }else {
                List<Teacher> teachers1 = teachers.subList(first, last);
                return teachers1;
            }
        }else {
            if(count<pageSize) {
                List<Teacher> teachers1 = teachers.subList(first, count);
                return teachers1;
            }else {
                List<Teacher> teachers1 = teachers.subList(first, last);
                return teachers1;
            }
        }
    }
  1. 页面展示
   <!DOCTYPE html>
   <html>
   <head>
       <meta charset="utf-8">
       <title>layui</title>
       <meta name="renderer" content="webkit">
       <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
       <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
       <link rel="stylesheet" href="/../back/layui/css/layui.css" media="all">
   </head>
   <body>
   
   <table class="layui-hide" id="test" lay-filter="test"></table>
   
   <script type="text/html" id="toolbarDemo">
       <div class="layui-btn-container">
           <button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
           <button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
           <button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
       </div>
   </script>
   <script type="text/html" id="barDemo">
       <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
       <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
       <a class="layui-btn layui-btn-xs" lay-event="detail">详情</a>
   </script>
   
   
   <script src="/../back/layui/layui.js" charset="utf-8"></script>
   
   <script>
       layui.use('table', function () {
           var table = layui.table;
   
           table.render({
               elem: '#test'
               , url: '/teacher/list'
               , toolbar: '#toolbarDemo'
               , title: '用户数据表'
               , totalRow: true
               , cols: [[
                   {type: 'checkbox', fixed: 'left'}
                   , {field: 'tId', title: 'ID', width: 250, fixed: 'left', unresize: true, sort: true, totalRowText: '合计'}
                   , {field: 'name', title: '教师名', width: 120}
                   , {field: 'name', title: '性别', width: 120}
                   , {field: 'tno', title: '编号', width: 110}
                   , {field: 'password', title: '密码', width: 250}
                   , {field: 'pic', title: '头像', width: 200}
                   , {fixed: 'right', title: '操作', toolbar: '#barDemo', width: 200}
   
               ]]
               , page: true,
               limits: [15, 30, 50, 100, 200],
               limit: 10,  //默认采用25
               loading: true,
               autoSort: false
           });
   
           //工具栏事件
           table.on('toolbar(test)', function (obj) {
               var checkStatus = table.checkStatus(obj.config.id);
               switch (obj.event) {
                   case 'getCheckData':
                       var data = checkStatus.data;
                       layer.alert(JSON.stringify(data));
                       break;
                   case 'getCheckLength':
                       var data = checkStatus.data;
                       layer.msg('选中了:' + data.length + ' 个');
                       break;
                   case 'isAll':
                       layer.msg(checkStatus.isAll ? '全选' : '未全选')
                       break;
               }
               ;
           });
       });
   </script>
   
   </body>
   </html>
  1. 码云地址
https://gitee.com/Marlon_Brando/book.git
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值