From 1298e154a53efac6f16afd526c258f46df3ec4fa Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Sat, 11 Oct 2025 11:02:37 +0800 Subject: [PATCH] =?UTF-8?q?tlias=E7=AE=A1=E7=90=86=E7=B3=BB=E7=BB=9F-?= =?UTF-8?q?=E5=91=98=E5=B7=A5=E5=88=86=E9=A1=B5=E6=8F=92=E4=BB=B6PageHelpe?= =?UTF-8?q?r=E6=9F=A5=E8=AF=A2=E5=8A=9F=E8=83=BD=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tlias-web-management/pom.xml | 6 ++++++ .../com/inmind/controller/EmpController.java | 15 +++++++++++-- .../java/com/inmind/mapper/EmpMapper.java | 11 ++++++---- .../inmind/service/impl/EmpServiceImpl.java | 21 ++++++++++++++++--- 4 files changed, 44 insertions(+), 9 deletions(-) diff --git a/tlias-web-management/pom.xml b/tlias-web-management/pom.xml index b3fc381..589b6e5 100644 --- a/tlias-web-management/pom.xml +++ b/tlias-web-management/pom.xml @@ -40,6 +40,12 @@ spring-boot-starter-test test + + + com.github.pagehelper + pagehelper-spring-boot-starter + 1.4.2 + diff --git a/tlias-web-management/src/main/java/com/inmind/controller/EmpController.java b/tlias-web-management/src/main/java/com/inmind/controller/EmpController.java index e6b17bc..06455fc 100644 --- a/tlias-web-management/src/main/java/com/inmind/controller/EmpController.java +++ b/tlias-web-management/src/main/java/com/inmind/controller/EmpController.java @@ -5,9 +5,13 @@ import com.inmind.pojo.Result; import com.inmind.service.EmpService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import java.time.LocalDate; + @RestController @Slf4j public class EmpController { @@ -16,8 +20,15 @@ public class EmpController { private EmpService empService; @GetMapping("/emps") - public Result page(Integer page,Integer pageSize){ - log.info("分页查询,参数page :{};pageSize:{}",page,pageSize); + //@RequestParam(defaultValue = "1") 设置参数的默认值 + public Result page( + String name, + Short gender, + @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate begin, + @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate end, + @RequestParam(defaultValue = "1") Integer page + ,@RequestParam(defaultValue = "10") Integer pageSize){ + log.info("分页查询,参数page :{};pageSize:{}----{},{},{},{}",page,pageSize,name,gender,begin,end); //调用业务层获取分页结果数据 PageBean pageBean = empService.page(page,pageSize); return Result.success(pageBean); diff --git a/tlias-web-management/src/main/java/com/inmind/mapper/EmpMapper.java b/tlias-web-management/src/main/java/com/inmind/mapper/EmpMapper.java index e7c6ed2..63b589c 100644 --- a/tlias-web-management/src/main/java/com/inmind/mapper/EmpMapper.java +++ b/tlias-web-management/src/main/java/com/inmind/mapper/EmpMapper.java @@ -9,8 +9,8 @@ import java.util.List; @Mapper public interface EmpMapper { //查询总记录数 - @Select("select count(*) from emp") - Long getTotal(); + /*@Select("select count(*) from emp") + Long getTotal();*/ /* 分页查询 limit @@ -18,7 +18,10 @@ public interface EmpMapper { 参数2:查询返回记录数 就是 每页展示的记录数 */ //分页查询获取员工列表数据 - @Select("select * from emp limit #{startIndex},#{pageSize};") - List getPageList(Integer startIndex,Integer pageSize); + /*@Select("select * from emp limit #{startIndex},#{pageSize};") + List getPageList(Integer startIndex,Integer pageSize);*/ + //员工的基本查询sql + @Select("select * from emp") + public List list(); } diff --git a/tlias-web-management/src/main/java/com/inmind/service/impl/EmpServiceImpl.java b/tlias-web-management/src/main/java/com/inmind/service/impl/EmpServiceImpl.java index d6feb42..e546385 100644 --- a/tlias-web-management/src/main/java/com/inmind/service/impl/EmpServiceImpl.java +++ b/tlias-web-management/src/main/java/com/inmind/service/impl/EmpServiceImpl.java @@ -1,5 +1,7 @@ package com.inmind.service.impl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; import com.inmind.mapper.EmpMapper; import com.inmind.pojo.Emp; import com.inmind.pojo.PageBean; @@ -14,19 +16,32 @@ public class EmpServiceImpl implements EmpService { @Autowired private EmpMapper empMapper; - @Override + /*@Override public PageBean page(Integer page, Integer pageSize) { //1.调用mapper获取总记录数和分页的员工列表数据 Long total = empMapper.getTotal(); - /* + *//* 分页查询 limit 参数1:起始索引 就是 (页码-1)*每页展示的记录数 参数2:查询返回记录数 就是 每页展示的记录数 - */ + *//* int startIndex = (page - 1)*pageSize; List empList = empMapper.getPageList(startIndex,pageSize); //2.封装pagebean对象 PageBean pageBean = new PageBean(total, empList); return pageBean; + }*/ + + + @Override + public PageBean page(Integer page, Integer pageSize) { + //1.调用分页插件PageHelper的固定api,startPage + PageHelper.startPage(page, pageSize); + //2.执行原始的查询sql语句(此时已经被分页插件修改了底层sql,它返回值其实是一个Page类型对象) + List empList = empMapper.list(); + Page p = (Page) empList; + //2.封装pagebean对象 + PageBean pageBean = new PageBean(p.getTotal(), p.getResult()); + return pageBean; } }