目录
Springboot中快速使用mybatis插件-PageHelper
1. 导入Maven坐标
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
2. 拦截查询方法
在Service层中调用查询数据方法之前,我们需要先调用插件中的分页查询的拦截器,传输页码和单页记录数这两个参数,以帮助动态在sql语句中添加"limit <记录索引> <单页记录数>"关键字。
/**
* 分页查询
* @param employeePageQueryDTO
* @return
*/
public PageResult pageQuery(EmployeePageQueryDTO employeePageQueryDTO) {
//开启分页查询拦截
PageHelper.startPage(employeePageQueryDTO.getPage(), employeePageQueryDTO.getPageSize());
//调用查询方法
Page<Employee> page = employeeMapper.queryPage(employeePageQueryDTO.getName());
PageResult pageResult = new PageResult(page.getTotal(), page.getResult());
return pageResult;
}
3. 编写查询的方法和mapper接口
Mybatis中可以通过使用注解的方式编写简单的SQL语句,遇到复杂的sql文件则需要在mapper.xml文件中编写SQL语句(定义mapper接口之后需要添加@Mapper注解)
<mapper namespace="com.sky.mapper.EmployeeMapper">
<select id="queryPage" resultType="com.sky.entity.Employee">
select * from employee
<where>
<if test="name != null and name != '' ">
and name like concat('%', #{name}, '%')
</if>
</where>
</select>
</mapper>
4. 配置:扫描Mapper.xml的映射文件路径
5. 版本说明
- Springboot:2.x
- JDK:1.8