Mybatis-Plus

 SpringBoot

 MyBatis

Mybaits1对1查询

Mybatis一对多和多对多查询

Mybatis-Plus

SpringSercurity


目录

前言

一、增删改查

1.安装Mybatis-Plus

2.创建一个student表 

3.实体类 

4.Mapper层

(1)建立一个StudentMapper

(2)创建一个StudentMapper配置文件

5.service层

6.controller层 

(1)全部查询

 (2)增加

(3)删除

 (4)改

 三、代码生成器

1.导入依赖

2.创建一个GenerateCode类

三、条件构造器 

 四、分页



前言

本次学习还是基于上一篇mybatis的学习代码。今天来学习mybatis-plus,他的作用如下:

1.单表增删改查方法封装

2.代码生成器

3.条件构造器(拼接条件查询)

4.分页


一、增删改查

1.安装Mybatis-Plus

导入依赖

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>最新版本</version>
</dependency>

修改application配置文件 

2.创建一个student表 

3.实体类 

创建一个实体类

4.Mapper层

(1)建立一个StudentMapper

 它要继承BaseMapper<Student>,方法已封装了,里面可以不用写内容。

(2)创建一个StudentMapper配置文件

里面也可以什么都不用写,但要创建

5.service层

 

同理

6.controller层 

 controller层还是要自己写的,创建一个StudentController类

(1)全部查询

创建对应的student.html文件 

得到 

 (2)增加

 创建对应的addstudent.html文件

 

得到

 

(3)删除

对应的studentlist.html文件 

得到

 (4)改

​  

对应的studentlist.html文件

新建立一个updatestudent.html文件 

 得到

 三、代码生成器

1.导入依赖

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

        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.2</version>
        </dependency>

2.创建一个GenerateCode类

package com.example.springboot2.utils;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import java.util.Collections;
public class GenerateCode {
    public static void main(String[] args) {
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/class?serverTimezone=UTC", "root", "123456")
                .globalConfig(builder -> {
                    builder.author("石敏") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            .outputDir("C://Users//yim//Desktop"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("com.example.springboot2") // 设置父包名
                            .moduleName("product") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "C://Users//yim//Desktop")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder.addInclude("product1") // 设置需要生成的表名
                            .addTablePrefix("t_", "c_"); // 设置过滤表前缀
                })
//                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }
}

就能自动生成controller、entity、mapper、service类

 

三、条件构造器 

mybatis-plus不能直接实现按条件查询,需要创建一个条件构造器对象

 如图所示,eq表示name=“test”的条件,like就是模糊查询,

得到结果

 

 四、分页

查询到的结果很多,不能直接全部显示,会很慢

​ 这样分页显示就能解决这个问题了

如何分页

但其实这样还不行,还需要一个拦截器,如图所示,建立一个类

他的内容如下

public class MybatisPlusConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor(){
        PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
        return paginationInterceptor;
    }
}

 得到结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值