ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

MybatisPlus的基本使用及分页插件的使用

2021-06-27 10:05:05  阅读:893  来源: 互联网

标签:插件 MybatisPlus 分页 Service pagination page 使用 interceptor public


1、先引入MybatisPlus所需要的依赖:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus</artifactId>
    <version>3.4.3.1</version>
</dependency>

2、在application.yml中配置数据源(数据库的基本信息)

spring:
  datasource:
    url: jdbc:mysql:///database?useSSL=false
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: root



# 可以配置mybatis的mapper映射文件位置和别名的信息
mybatis:
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: com.lld.springbootproject.pojo


3、给springboot启动类添加@MapperScan注解扫描接口位置,或者给每个接口添加@Mapper注解

4、Mapper接口(BaseMapper中含有现成的对于数据库单表操作的基本语句,继承之后直接调用即可)

public interface UserMapper extends BaseMapper<User> {

}

5、Service接口

@Service
public interface UserService extends IService<User> {

}

6、Service实现类

/*UserMapper指定用哪个mapper,User指定结果类型*/
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}

7、Controller调用方法

 @Autowired
    UserService userService;
    
    
    @GetMapping("/getUserDetails")
    @ResponseBody
    public List<User> getUserDetails(){

        List<User> list = userService.list();
        return list;
    }

二、分页插件的使用

1、在configuration配置类中编写此方法

@Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        PaginationInnerInterceptor pagination = new PaginationInnerInterceptor();
        pagination.setOverflow(true);
        pagination.setMaxLimit(500L);
        interceptor.addInnerInterceptor(pagination);
        return interceptor;
    }

2、在业务代码中使用分页

/*设置pn第几页,2(一页显示几个)*/
Page<User> userPage = new Page<>(pn,2);

/*分页后的结果给page*/
Page<User> page = userService.page(userPage, null);

3、分页基本的属性含义

page.current:当前页

page.pages:总页数

page.total:总记录数

page.records:分页后的记录

标签:插件,MybatisPlus,分页,Service,pagination,page,使用,interceptor,public
来源: https://blog.csdn.net/YSZAYMT/article/details/118266581

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有