Springboot整合MybatisPlus及分页功能

1 引入pom

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot</artifactId>
    <version>2.7.14</version>
</dependency>
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3.2</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.29</version>
</dependency>

2 编写配置类MybatisPlusConfig

java 复制代码
@Configuration
public class MybatisPlusConfig {
    /**
     * 分页插件
     */
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}

3 业务实现

3.1 Controller层

java 复制代码
    @Autowired
    IComponentService componentService;

    @ApiOperation(value = "查询基础组件列表", notes = "根据条件查询基础组件列表")
    @GetMapping("/list")
    public ResponseMessage<IPage<Component>> queryList(@RequestBody QueryEntity<ComponentDTO> queryEntity){
        IPage<Component> page = new Page<>(queryEntity.getPageNum(), queryEntity.getPageSize());
        LambdaQueryWrapper<Component> query = new LambdaQueryWrapper<>();
//        query.eq(Component::getType, queryEntity.getQuery().getType());
        return ResponseMessage.success("查询成功",componentService.queryList(page,query));
    }

3.2 service层

java 复制代码
IPage<Component> queryList(IPage<Component> page, LambdaQueryWrapper<Component> queryWrapper);

3.3 service实现层

java 复制代码
	@Override
    public IPage<Component> queryList(IPage<Component> page, LambdaQueryWrapper<Component> queryWrapper) {

        return componentMapper.selectPage(page,queryWrapper);
    }

3.4 dao层

java 复制代码
@Mapper
public interface ComponentMapper extends BaseMapper<Component> {

}

4 yaml配置

yaml 复制代码
server:
  #运行端口号
  port: 8090
  servlet:
    context-path: /hom

spring:
#  mvc:
#    pathmatch:
#      matching-strategy: ANT_PATH_MATCHER
  #数据源配置
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/hom?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: root
    password: marlon

#mybatis-plus配置
mybatis-plus:
  configuration:
    #sql日志打印
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    #开启驼峰命名匹配
    map-underscore-to-camel-case: true
    #mapper文件
  mapper-locations: classpath:mapper/**/*.xml,classpath:mapper/*.xml
  #数据库实体类的包全路径,方便在mapper.xml中不许使用实体类的全路径,写类名就行(不区分大小写)
  type-aliases-package: cn.com.marlon.hom.entity
  global-config:
    db-config:
      #逻辑删除
      logic-delete-value: 0
      logic-not-delete-value: 1
      logic-delete-field: deleted

5 postman测试

相关推荐
烽学长2 小时前
(附源码)基于Springboot+vue的图书阅读分享系统的设计与实现
java·spring boot·后端
+VX:Fegn08953 小时前
计算机毕业设计|基于java+ vue共享单车信息系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Bs_MoneyMagnet4 小时前
基于springboot+vue的非遗物质文化遗产系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
计算机毕设定制辅导-无忧学长4 小时前
《基于SpringBoot的未成年人健康知识科普平台的设计与实现》
java·开发语言·vue.js·spring boot·未成年人健康知识科普平台
连山齐名5 小时前
spring的面试八股文
spring boot
专业程序开发源7 小时前
springboot篮球联赛管理系统13635-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
毕业设计7037 小时前
(免费领源码) SpringBoot 游戏交易平台17600-java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
java·spring boot·mysql·决策树·mybatis·idea·推荐算法
一 乐7 小时前
自习室座位预约管理系统|基于springboot + vue自习室座位预约管理系统(源码+数据库+文档)
java·vue.js·spring boot
行百里er7 小时前
轻量级 Spring 监测工具——Spring Insight 发布了
spring boot·后端·监控
vx_BS813308 小时前
【项目编号:project51629】Spring Boot 乡村自来水缴费系统:把抄表、水费生成与在线缴费做成一条数字化闭环
java·spring boot·eclipse·tomcat·maven