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

长沙做网站a微联讯点很好长尾关键词快速排名软件

长沙做网站a微联讯点很好,长尾关键词快速排名软件,layui wordpress,乌鲁木齐网站设计要多少基于PageHelper的分页查询 ‘PageHelper是基于java的一个开源框架,用于在MyBatis等持久层框架中方便地进行分页查询操作。它提供了一组简单易用的API和拦截器机制,可以帮助开发者快速集成和使用分页功能。 PageHelper的主要功能包括: 分页…

基于PageHelper的分页查询

‘PageHelper是基于java的一个开源框架,用于在MyBatis等持久层框架中方便地进行分页查询操作。它提供了一组简单易用的API和拦截器机制,可以帮助开发者快速集成和使用分页功能。

PageHelper的主要功能包括:

分页查询支持:PageHelper提供了直接在SQL语句中添加分页相关的信息,如页码、每页记录数等,从而实现分页查询功能。
参数解析和设置:PageHelper可以解析传入的查询参数,并自动设置分页的相关参数,无需手动计算和设置。
SQL拦截器:PageHelper通过自定义的SQL拦截器拦截和处理查询SQL,自动添加分页的SQL语句,实现分页查询。
排序支持:PageHelper还提供了对排序的支持,可以在分页查询中指定排序字段和排序方式。
分页信息返回:PageHelper会将查询结果封装在一个Page对象中,包含了分页的相关信息,如总记录数、总页数等。
PageHelper的底层原理是拦截,拦截需要进行分页查询的SQL请求,读取用户传入参数,自主构造分页SQL语句。

它的使用很便利,大大简化了分页查询的操作步骤,因此在企业开发中也比较常见,作为一名合格的开发者,我们要熟练的掌握基于PageHelper的分页查询操作。
maven坐标

<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>

主要看一下serviceImpl和mapper的xml文件

先调用PageHelper的stratPage函数,传递要查询的页码以及每一页的数据条数

再调用pageQuery方法进行实际的分页查询操作。这里的employeeMapper是对应的Mybatis Mapper接口,pageQuery()方法是其中定义的一个查询方法,用于执行分页查询操作。

然后,通过page.getTotal方法获取查询结果的总数,即满足条件的数据总条数。

通过 方法获取当前页的数据列表,即符合分页条件的数据集合。

最后,将总数和当前页的数据列表封装成一个PageResult对象,并返回给调用方。

 public PageResult pageQuery(DishPageQueryDTO dishPageQueryDTO) {PageHelper.startPage(dishPageQueryDTO.getPage(), dishPageQueryDTO.getPageSize());Page<DishVO> page = dishMapper.pageQuery(dishPageQueryDTO);return new PageResult(page.getTotal(), page.getResult());}
<select id="pageQuery" resultType="com.sky.vo.DishVO">select d.*,c.name as categoryName from dish d left outer join category c on d.category_id = c.id<where><if test="name != null and name != ''">and d.name like concat('%',#{name},'%')</if><if test="categoryId != null">and d.category_id = #{categoryId}</if><if test="status != null">and d.status = #{status}</if></where>order by d.create_time desc</select>

而下面的xml文件配合左外连接和动态sql完成动态分页

  • select d.*,c.name as categoryName:查询菜品表 dish 的所有字段,并把分类表 category 的名字字段命名为 categoryName
  • left outer join:把分类表连接进来,哪怕 dish 没有分类也查得出来(因为是左外连接)
  • <where> 标签:
    • 会自动在 SQL 中添加 WHERE 关键字;
    • 如果你拼接的 and xxx 条件前面没有内容,它会帮你清理多余的 and,保持 SQL 正确
  • <if> 标签:
    • 表示如果传入参数中 name 不为空,就加上模糊查询 d.name like '%xxx%'
    • 如果 categoryIdstatus 有值,也拼上对应条件
  • 最后 order by d.create_time desc 是排序,创建时间降序排列
动态 SQL 优点说明
灵活条件多少不确定时可自由拼接
可读性强语法直观,类似 HTML 标签结构
可维护性强比写多个 SQL 方法更清晰
http://www.dtcms.com/wzjs/68905.html

相关文章:

  • 宝安电子厂做网站sem优化师是做什么的
  • 杭州网站建设 网站设计网络营销环境分析主要包括
  • 如何利用网站做demo吉安seo网站快速排名
  • 51源码之家seo关键词排名优化官网
  • 建设学校网站需要具备自有品牌如何推广
  • 网站的要素是什么热门seo推广排名稳定
  • 公司网站名词解释网站建设制作
  • 手机兼职百度关键词相关性优化软件
  • 湘潭做网站价格 磐石网络广州网站营销推广
  • 中国保密在线网站培训可以搜索国外网站的搜索引擎
  • 图门市建设局网站怎样优化标题关键词
  • 安徽网站建设优化推广html期末大作业个人网站制作
  • 便捷的邢台做网站网络站点推广的方法有哪些
  • 网站建设发票税点如何进行网站性能优化?
  • 惠州响应式网站哪家好百度词条
  • 中山建公司网站永久免费google搜索引擎
  • 网站测速外包网络推广营销
  • 酷站网河北百度推广电话
  • 一个企业为什么要建设网站域名地址查询
  • 网站制作的流程包括哪些微信社群营销推广方案
  • 广州市国外网站建设平台外包公司和劳务派遣的区别
  • 做公司的网站大概多少钱站长工具站长之家
  • 商城微信网站怎么做seo高级教程
  • 旅行社网站建设规划方案西安网站建设公司排名
  • 怎么做公司招聘网站爱用建站官网
  • 北京疫情最新进展seo免费优化网址软件
  • 河南专业网站建设公司哪家好曹操seo博客
  • 新疆生产建设兵团人社厅网站手机百度问一问
  • 找建筑类工作哪个网站好如何制作一个自己的网站
  • 100个免费货源网站网站优化技巧