记一次前后端分离项目中---关于分页查询解决的思路


前言

项目模块为课程管理模块,课程需要分页展示数据,并且能够根据每页展示记录数进行自动分页,接下来说说如何处理分页展示的思路


一、首先了解一下ElementUI<el-pagination>中几个属性绑定的事件

在这里插入图片描述

@size-change当页面显示数据条数发生改变触发此事件

在这里插入图片描述

@current-change当页码改变触发此事件

在这里插入图片描述


二、前端

2.1 find All函数

  • 发起请求,传三个重要参数给后端(currentPage)、(pageSize)、(search)查询课程表数据
  • datableDate存放的就是后端返回的一个个课程对象(对象数组)
  • totalCount存放的是后端返回的数据库课程表总记录条数

代码如下:

/*课程分页查询*/
			findAll() {
   
				axios.post(`http://localhost/course?method=findAll`,
				`currentPage=${
     this.currentPage}&pageSize=${
     this.pageSize}&search=${
     this.search}`)
				.then(resp=>{
   
					//console.log(resp.data.list);
					this.tableData = resp.data.list
					this.totalCount = resp.data.total
				})
			}

2.2 handleCurrentChange函数

  • 当页码改变触发此事件
  • 点击上一页或者下一页切换每页展示数据

代码如下:

/*当页码改变触发此事件*/
			handleCurrentChange: function (currentPage) {
   
				this.tableData = ''
    			this.currentPage = currentPage;
    			this.findAll()
			},

2.3 handleSizeChange函数

  • 当页面显示数据条数发生改变触发此事件
  • 切换每页展示数据的条数

代码如下:

handleSizeChange: function (size) {
   
				this.pageSize = size;
    			this.findAll()
			},

三、后端

3.1 servlet层

  • 获取请求数据中的参数
  • 将结果封装进集合
  • 最后再利用工具将数据转换成json格式返回给前端

代码如下:

/**
     * 分页查询
     * @param req
     * @param resp
     * @throws ServletException
     * @throws IOException
     */
    protected void findAll(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException, SQLException {
   
        //获取请求数据中的参数
        int currentPage =Integer.parseInt(req.getParameter("currentPage"));
        int pageSize =Integer.parseInt(req.getParameter("pageSize"));
        String search 
  • 25
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

lichaohua!

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

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

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

打赏作者

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

抵扣说明:

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

余额充值