服务器之家

服务器之家 > 正文

oracle+mybatis-plus+springboot实现分页查询的实例

时间:2021-11-05 10:34     来源/作者:热爱生活的小码农

今天蠢了一上午才弄出这玩意,话不多说上代码!

1、建一个配置类

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package com.sie.demo.config;
 
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
 
/**
 * @author liaozhifeng
 * @date 2021/7/31 11:14
 * @Version 1.0
 */
@Configuration
@ConditionalOnClass(value = {PaginationInterceptor.class})
public class MybatisPlusConfig {
 
    // 最新版
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
//        数据库的配置DbType.ORACLE 根据自己的数据库选择
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.ORACLE));
        return interceptor;
    }
}

2、service层的代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package com.sie.demo.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sie.demo.entity.Users;
import com.sie.demo.entity.vo.PageUserVo;
import com.sie.demo.mapper.UserMapper;
import com.sie.demo.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.util.DigestUtils;
 
import javax.annotation.Resource;
 
import javax.servlet.http.HttpSession;
import java.util.List;
 
/**
 * @author liaozhifeng
 * @date 2021/7/27 14:03
 * @Version 1.0
 */
@Service
@Slf4j
public class UserServiceImpl extends ServiceImpl<UserMapper, Users> implements UserService {
    @Resource
    UserMapper userMapper;
 
    
    /**
     * 分页查询用户
     * @param currentPage
     * @param pageSize
     * @return
     */
    @Override
    public PageUserVo selectAll(long currentPage, long pageSize) {
        IPage<Users> userPage = new Page<>(currentPage, pageSize);//参数一是当前页,参数二是每页个数
        IPage<Users> iPage = userMapper.selectPage(userPage, null);
        List<Users> list = iPage.getRecords();
        Long total = iPage.getTotal();
        PageUserVo pageUserVo = new PageUserVo(list, total);
        return pageUserVo;
    }
}

3、controller层 RetResult是我自己定义的一个统一返回的泛型对象

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.sie.demo.controller;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.QueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sie.demo.entity.RetCode;
import com.sie.demo.entity.RetResponse;
import com.sie.demo.entity.RetResult;
import com.sie.demo.entity.Users;
 
import com.sie.demo.entity.vo.PageUserVo;
import com.sie.demo.service.impl.UserServiceImpl;
import com.sie.demo.util.TokenUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import javax.servlet.http.HttpSession;
import java.util.List;
 
 
@Controller
@RestController
@RequestMapping("user")
@Slf4j
public class UserController {
    @Autowired
    UserServiceImpl userService;
 
  
    /**
     *
     *
     * @param currentPage
     * @param pageSize
     * @return
     */
    @GetMapping("selectAll")
    public RetResult<PageUserVo> selectAll(long currentPage,  long pageSize) {
        log.info(currentPage+pageSize+"=========================");
        PageUserVo pageUserVo  = userService.selectAll(currentPage,pageSize);
        return RetResponse.makeOKRsp(pageUserVo);
    }
}

到此这篇关于oracle+mybatis-plus+springboot实现分页查询的实例的文章就介绍到这了,更多相关 mybatis-plus springboot分页查询内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_46108919/article/details/119274278

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部