后端部分 springboot
- 第一步:在util包下定义PageBean<T>工具类用于接受一个分页查询结果
import java.util.List;
//数据库自定义分页查询的工具类
@Data
public class PageBean<T> {
private int currPage;//当前页数
private int pageSize;//每页的数据条数
private int totalCount;//总记录数
private int totalPage;//总页数
private List<T> lists;//每页的显示的数据
public PageBean() {
super();
@Override
public String toString() {
return \"PageBean{\" +
\"currPage=\" + currPage +
\" pageSize=\" + pageSize +
\" totalCount=\" + totalCount +
\" totalPage=\" + totalPage +
\" lists=\" + lists +
'';
- 第二步:具体业务实现serviceImpl
* 分页查询短信历史纪录
* @param currPage 第几页
* @param pageSize 每页显示的条数
【路由器|Mybatis+element简单实现自定义数据库分页查询】* @return PageBean<Map<StringObject>> 这里我用map来接收数据库返回的信息 , 你也可以用你的实体类来接收PageBean<User>
*/
@Resource
private UserDaoMapper userDaoMapper; //这里改为你自己的mapper接口
public PageBean<User> findAllUser(int currPageint pageSize){
HashMap<String Object> map = new HashMap<>();//哈希集合存储不重复的数据
PageBean<User> pageBean = new PageBean<>();
//每页显示的数据条数
pageBean.setPageSize(pageSize);
//封装总记录数 , 获取总数
int totalCount = userDaoMapper.getUserNumber(); //改为你自己的接口
pageBean.setTotalCount(totalCount);
//如果没有数据直接返回
if(totalCount==0){
return pageBean;
//封装总页数
double tc = totalCount;
Double num = Math.ceil(tc / pageSize);//向上取整
pageBean.setTotalPage(num.intValue());
//传入的当前页小于1时则等于1 , 大于总页数则等于总页数也就是最后一页
if(currPage<1) currPage=1;
else if(currPage>pageBean.getTotalPage()) currPage = pageBean.getTotalPage();
//封装当前页数
pageBean.setCurrPage(currPage);
map.put(\"start\" (currPage - 1) * pageSize);
map.put(\"size\" pageBean.getPageSize());
//封装每页显示的数据
List<User> lists = userDaoMapper.findAllUser(map); //改为你自己的接口
for(User user:lists){
user.setPassword(\"\");
pageBean.setLists(lists);
return pageBean;
- 第三步:mapper的XML文件
<select id=\"findAllUser\" parameterType=\"Map\" resultType=\"map\">
select * from users limit #{start#{size
</select>
<!--获取用户的总数-->
<select id=\"getUserNumber\" resultType=\"int\">
select count(*) from users
</select>
- 第四步:接口层
* 获取历史记录
* limit 每页显示多少条数据
* page 第几页
* @return
*/
@GetMapping(\"/sms/getsmsloglist\")
public Result getSmslogList(@RequestParam(\"limit\") Integer limit@RequestParam(\"page\") Integer page) {
return userService.findAllUser(pagelimit); //调用业务实现 , 返回结果根据你自己的返回结构封装
- 指控|Facebook将被分拆?别把反垄断想的太简单了
- 小米|网友拆开四年前的小米路由器4:赫然发现“ARE YOU OK!!!”
- 毁掉一个饭圈女孩,有多简单?(漫画)
- 路由器|只需一个设置,WIFI 信号大幅增强?
- 简约而不简单——GENEVA
- 路由器|2.4GHz路由器和5GHz路由器,有什么区别?
- 张志东|广东神秘富豪张志东千亿身家,与马化腾是兄弟,来历不简单
- 打印竟然如此简单和便宜:惠普M232dw和华为PixLabX1打印机体验
- 索尼|没有捆绑其他应用的网络电视盒子,什么牌子的电视盒子简单易操作
- 5G|路由器信号分为2.4G和5G,影响的是网速还是wifi距离?