分页查询--条件查询
使用pagehelper插件
我们在pom.xml文件中加入下面的语句,可以使用插件,进行分页查询
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.2</version></dependency>
分页查询
前端controller代码
@Autowiredprivate TestService testService;@GetMapping("/emp")public Result page(@RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "4") Integer pageSize,@DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate begin, @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate end) {//调用service代码中的函数List<Doctor> doc1=testService.page(pageNum,pageSize,begin,end);return Result.success(doc1);}
Service代码
@Autowired
private EmpMapper empMapper;@Overridepublic List<Doctor> page(Integer pageNum, Integer pageSize, LocalDate begin, LocalDate end) {//设置分页参数PageHelper.startPage(pageNum, pageSize);//执行查询List<Doctor> docList=empMapper.list(begin,end);//转换为Page对象Page<Doctor> p=(Page<Doctor>)docList;return p.getResult();}
Mapper接口文件:
@Mapper
public interface EmpMapper {List<Doctor> list(LocalDate begin, LocalDate end);
}
映射的XML文件:
<mapper namespace="com.forge.mapper.EmpMapper"><select id="list" resultType="com.forge.entity.Doctor"><!--我们不需要去写分页的查询-->
select * from doctor
where create_time between #{begin} and #{end}</select></mapper>