From a38443bd2e310d777944464e7fb7b1f81caf8e20 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Sun, 16 Nov 2025 15:09:39 +0800 Subject: [PATCH] =?UTF-8?q?tlias=E7=AE=A1=E7=90=86=E7=B3=BB=E7=BB=9F--?= =?UTF-8?q?=E9=83=A8=E9=97=A8=E7=AE=A1=E7=90=86--=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=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 | 3 ++ .../com/inmind/controller/EmpController.java | 31 ++++++++++++++++ .../java/com/inmind/mapper/EmpMapper.java | 14 ++++++++ .../main/java/com/inmind/pojo/PageBean.java | 20 +++++++++++ .../java/com/inmind/service/EmpService.java | 9 +++++ .../inmind/service/impl/EmpServiceImpl.java | 35 +++++++++++++++++++ 6 files changed, 112 insertions(+) create mode 100644 tlias-web-management/src/main/java/com/inmind/pojo/PageBean.java diff --git a/tlias-web-management/pom.xml b/tlias-web-management/pom.xml index 369d841..403a734 100644 --- a/tlias-web-management/pom.xml +++ b/tlias-web-management/pom.xml @@ -62,6 +62,9 @@ 11 11 UTF-8 + + -parameters + 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 6f5f4a3..3def20d 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 @@ -1,7 +1,38 @@ package com.inmind.controller; +import com.inmind.pojo.PageBean; +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.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +@RequestMapping("/emps") @RestController +@Slf4j public class EmpController { + + @Autowired + private EmpService empService; + + @GetMapping + public Result page( + @RequestParam(defaultValue = "1") Integer page + ,@RequestParam(defaultValue = "10") Integer pageSize){ + /*if (page == null) { + page = 1; + } + + if (pageSize == null) { + pageSize = 10; + }*/ + + log.info("分页查询:{},{}",page,pageSize); + //调用员工业务层的分页查询功能 + 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 284a03f..e281ab6 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 @@ -1,7 +1,21 @@ package com.inmind.mapper; +import com.inmind.pojo.Emp; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; @Mapper public interface EmpMapper { + /** + * 查询总记录数 + * @return + */ + @Select("select count(*) from emp") + Long getTotal(); + + @Select("select * from emp limit #{startIndex},#{pageSize}") + List getPageList(int startIndex,int pageSize); + } diff --git a/tlias-web-management/src/main/java/com/inmind/pojo/PageBean.java b/tlias-web-management/src/main/java/com/inmind/pojo/PageBean.java new file mode 100644 index 0000000..84736bb --- /dev/null +++ b/tlias-web-management/src/main/java/com/inmind/pojo/PageBean.java @@ -0,0 +1,20 @@ +package com.inmind.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * 分页查询结果封装类 + * 分页的总记录数 + * 当前页的数据列表数据 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class PageBean { + private Long total; + private List rows; +} diff --git a/tlias-web-management/src/main/java/com/inmind/service/EmpService.java b/tlias-web-management/src/main/java/com/inmind/service/EmpService.java index a62dd3b..5eb1a0b 100644 --- a/tlias-web-management/src/main/java/com/inmind/service/EmpService.java +++ b/tlias-web-management/src/main/java/com/inmind/service/EmpService.java @@ -1,4 +1,13 @@ package com.inmind.service; +import com.inmind.pojo.PageBean; + public interface EmpService { + /** + * 分页查询 + * @param page + * @param pageSize + * @return + */ + PageBean page(Integer page, Integer pageSize); } 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 5e1eb84..d7694e5 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,8 +1,43 @@ package com.inmind.service.impl; +import com.inmind.mapper.EmpMapper; +import com.inmind.pojo.Emp; +import com.inmind.pojo.PageBean; import com.inmind.service.EmpService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + @Service public class EmpServiceImpl implements EmpService { + + @Autowired + private EmpMapper empMapper; + + /** + * 分页查询 + * @param page 页码 + * @param pageSize 每页显示条数 + * @return + */ + @Override + public PageBean page(Integer page, Integer pageSize) { + //1.获取总记录数 + Long total = empMapper.getTotal(); + //2.获取当前页的数据列表 + /* + -- 分页查询 :select * from emp limit 参数1 参数2 + -- 参数1:起始索引 就是(页码-1)*每页显示的记录数 + -- 参数2:查询返回的记录数 就是每页显示的记录数 + */ + int startIndex = (page - 1)* pageSize; + List rows = empMapper.getPageList(startIndex,pageSize); + //3.封装成分页查询结果,并返回 + /*PageBean pageBean = new PageBean(); + pageBean.setRows(rows); + pageBean.setTotal(total); + return pageBean;*/ + return new PageBean(total, rows); + } }