当前位置: 首页 > wzjs >正文

青岛公司建网站公司网站维护的内容有哪些

青岛公司建网站公司,网站维护的内容有哪些,做程序员需要什么条件,wordpress 截取分页实现方案 在现代Web应用中,用户列表展示与分页是一个常见的功能需求。前端与后端通过API协同工作,使用PageHelper等工具实现高效分页。 例如: 后端实现 (使用PageHelper) public PageResult DishPage(DishPageQueryDTO dishPageQuery…

分页实现方案

在现代Web应用中,用户列表展示与分页是一个常见的功能需求。前端与后端通过API协同工作,使用PageHelper等工具实现高效分页。

例如:

后端实现 (使用PageHelper)

public PageResult DishPage(DishPageQueryDTO dishPageQueryDTO) {PageHelper.startPage(dishPageQueryDTO.getPage(),dishPageQueryDTO.getPageSize());Page<DishVO> page=dishMapper.DishQueryPage(dishPageQueryDTO);PageResult pageResult=new PageResult();pageResult.setTotal(page.getTotal());pageResult.setRecords(page.getResult());return pageResult;}

PageHelper.startPage() - 分页的起点

PageHelper.startPage()方法是整个分页过程的起点,它通过ThreadLocal机制在当前线程中设置分页参数:

PageHelper.startPage(dishPageQueryDTO.getPage(), dishPageQueryDTO.getPageSize());
  • 参数1:当前页码(从1开始计数)

  • 参数2:每页显示的记录数

底层原理

  1. PageHelper会将这两个参数存入Page对象

  2. 通过PageInterceptor拦截器,这个对象会被后续的SQL查询拦截

  3. 拦截器会根据这些参数改写原始SQL,添加LIMIT/OFFSET等分页子句

执行Mapper查询

Page<DishVO> page = dishMapper.DishQueryPage(dishPageQueryDTO);

这行代码看似普通的Mapper调用,实则暗藏玄机:

  1. 自动拦截:PageHelper的拦截器会在SQL执行前介入

  2. SQL改写:根据startPage设置的参数,拦截器会将原始SQL改写为分页查询

    • MySQL:添加LIMIT offset, pageSize

    • Oracle:使用ROWNUM实现分页

  3. 执行查询:改写后的SQL会被执行,获取当前页的数据

  4. 总数查询:拦截器还会自动执行COUNT查询获取总记录数

Page对象解析

查询返回的Page<DishVO>对象包含了丰富的分页信息:

  • getTotal():总记录数(不是总页数)

  • getResult():当前页的数据列表

  • getPages():总页数(通过total/pageSize计算)

  • getPageNum():当前页码

  • getPageSize():每页大小

构建自定义PageResult

PageResult pageResult = new PageResult(); pageResult.setTotal(page.getTotal()); pageResult.setRecords(page.getResult()); return pageResult;

这里将Page对象转换为自定义的PageResult,通常是为了:

  1. 简化响应结构:只返回前端需要的字段

  2. 统一格式:保持API响应的一致性

  3. 数据脱敏:有机会对敏感字段进行处理

完整工作流程

  1. 客户端请求带分页参数的API(如/dishes?page=2&pageSize=10

  2. 控制器接收参数并构造DTO对象

  3. Service层调用PageHelper.startPage()启动分页

  4. 执行Mapper查询,PageHelper自动拦截并改写SQL

  5. 获取分页结果并包装为自定义响应对象

  6. 返回给前端统一格式的分页数据

http://www.dtcms.com/wzjs/105039.html

相关文章:

  • 医学专业网站做营销策划的公司
  • 福州做企业网站seo网站推广可以自己搞吗
  • 网站色彩策划快速排名seo
  • 做视频教学网站上海最新事件
  • 如何免费制作网站seo怎么优化步骤
  • 广元建设网站深圳全网推广托管
  • 网站建设策划书参考案例百度怎么做自己的网页
  • 眼镜商城网站建设方案最靠谱的十大教育机构
  • 猪八戒网站开发骗局银徽seo
  • 电梯配件做外贸在哪个网站如何做网站推广
  • 利用建站系统wordpress建设网站百度搜索推广费用
  • 江西手机版建站系统开发seo简单优化操作步骤
  • wordpress禁止图片关键词推广优化排名品牌
  • wordpress marble厦门零基础学seo
  • 计算机网络网站开发要怎么做网络推广
  • 济南官网优化推广福州seo结算
  • 没公司怎么做网站域名注册后如何建网站
  • 如何免费建站游戏推广赚佣金的平台
  • 做企业网站市场分析关键词排名零芯互联排名
  • 郑州网站开发比较好的网络公司百度seo公司哪家好一点
  • 淮安市做网站的公司湖北网站seo设计
  • 全能网站模板公司网站设计图
  • 深圳网站建设 sitesem竞价推广是什么
  • 电商网站建设基本流程贵阳网络推广排名
  • 科技成果转化平台关键词优化一年的收费标准
  • 做视频网站用哪个模板seo运营推广
  • 网站照片加水印天津seo
  • 愿意做cps的网站做网站的外包公司
  • 做网站后端的全部步骤站长统计app软件下载2021
  • 武汉科技有限公司 网站建设快手作品推广网站