• 快速使用 MyBatis-Plus


    一、准备工作

    需要 Java 开发环境(JDK)、开发工具(IDE)、 maven(用来下载相关依赖的 jar 包)。也可以使用 IDEA 安装一个 mybatis-plus 插件。

    步骤

    1、创建数据库mybatis-plus、创建user表、插入数据

    DROP TABLE IF EXISTS user;
    
    CREATE TABLE user
    (
        id BIGINT(20) NOT NULL COMMENT '主键ID',
        name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
        age INT(11) NULL DEFAULT NULL COMMENT '年龄',
        email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
        PRIMARY KEY (id)
    );
    
    DELETE FROM user;
    
    INSERT INTO user (id, name, age, email) VALUES
    (1, 'Jone', 18, 'test1@baomidou.com'),
    (2, 'Jack', 20, 'test2@baomidou.com'),
    (3, 'Tom', 28, 'test3@baomidou.com'),
    (4, 'Sandy', 21, 'test4@baomidou.com'),
    (5, 'Billie', 24, 'test5@baomidou.com');
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述

    2、创建 SpringBoot 项目。
      方式一:去官网 https://start.spring.io/ 初始化一个,然后导入 IDE 工具即可。
      方式二:直接使用 IDE 工具创建一个。 Spring Initializer。
    在这里插入图片描述

    在这里插入图片描述

    二、导入依赖

    使用mybatis-plus可以节省我们大量的代码,尽量不要同时导入mybatis和mybatis-plus,有版本差异!

     
            <dependency>
                <groupId>com.baomidougroupId>
                <artifactId>mybatis-plus-boot-starterartifactId>
                <version>3.4.2version>
            dependency>
            
            <dependency>
                <groupId>org.projectlombokgroupId>
                <artifactId>lombokartifactId>
            dependency>
            
            <dependency>
                <groupId>mysqlgroupId>
                <artifactId>mysql-connector-javaartifactId>
                <version>5.1.47version>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    三、连接数据库

    在 application.yml 文件中配置 mysql 数据源信息。

    spring:
      datasource:
        username: root
        password: 123456
        url: jdbc:mysql://localhost:3306/mybatis_plus?useSSL=true&useUnicode=true&characterEncoding=UTF-8
        driver-class-name: com.mysql.jdbc.Driver
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    四、编写代码

    • pojo(User实体类)
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public class User {
    
        private Long id;
        private String name;
        private Integer age;
        private String email;
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • mapper(实体类的UserMapper接口)
    //在对应的Mapper上面实现基本的类 BaseMapper
    
    @Repository  //持久层
    public interface UserMapper extends BaseMapper<User> {
        //所有的CRUD操作都已经编写完成了
        
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 使用

      注意点,我们需要在主启动类上去扫描我们的mapper包下的所有接口 ,加上@MapperScan("com.jin.mapper")

    五、测试

    • 测试类中测试

      @SpringBootTest
      class MybatisPlusApplicationTests {
      
          //继承了BaseMapper,所有的方法都来自父类,
          // 也可以编写自己的扩展方法。
          @Autowired
          private UserMapper userMapper;
          @Test
          void contextLoads() {
              //参数是一个Wrapper,条件构造器,这里我们先不用 null
              //查询全部用户
              List<User> users = userMapper.selectList(null);
              users.forEach(System.out::println);
          }
      
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16

    在这里插入图片描述

    总结:

    • 通过以上简单操作,就能对 user 表进行 CRUD 操作,不需要去编写 xml 文件
    • 若遇到 @Autowired 标记的变量出现 红色下划线,但是不影响 正常运行。
  • 相关阅读:
    MacBook通过XGP玩女神异闻录5皇家版不踩坑指南
    三菱FX3U PLC S型速度曲线生成FB
    【毕业设计】基于stm32的车牌识别 - 单片机 嵌入式 物联网 机器视觉
    MySQL的replace into 与insert into on duplicate key update
    Javaweb安全——JNDI注入
    Jenkins 设置定时任务
    如何写最基础的播放音频界面
    C++设计模式_11_builder 构建器(小模式,不太常用)
    【FPGA教程案例72】基础操作2——Xilinx原语学习及应用2
    金字塔场景解析网络(Pyramid Scene Parsing Network )
  • 原文地址:https://blog.csdn.net/weixin_45737330/article/details/126367084