• 【MyBatis-Plus】简介 入门案例


    ?? 博客主页:
    ?? 00年出生,即将进入职场闯荡,目标赚钱,可能会有人觉得我格局小、觉得俗,但不得不承认这个世界已经不再是以一条线来分割的平面,而是围绕财富旋转的球面,成为有钱人不是为了去掌控球体的转向,而是当有人恶意掌控时,努力保护好家人和自己。

    MyBatis-Plus

    一、MyBatis-Plus 简介

    • Mybatis-Plus(简称 MP )是基于 MyBatis 框架基础上开发的增强型工具,旨在简化开发、提供效率。简化开发、提供效率 是它的优势也是目的。
    • 对于 Mybatis-Plus 相关内容的学习,我们可以在 官网 中查看,这个官网我认为还是非常友好的,因为它是中文形式的,就相当于给我们提供了一个学习笔记,方便使用。

    在这里插入图片描述

    二、入门案例

    1、创建数据库表

    在这里插入图片描述

    2、创建项目

    • 我创建项目使用的是阿里云的网址方式(因为我在联网情况下也无法使用 spring 官方的网址创建),在选择依赖时选中 MySQL 连接驱动和 MyBatis Plus 依赖。之后按照创建 SpringBoot 项目的方式创建即可,如果不了解如何创建的,可以移步到 【SpringBoot】快速入门 文章查看。
      在这里插入图片描述
    • 创建完项目后,我们可以看看都自动为我们导入了哪些依赖,重点看一下 mybatis-plus 的启动依赖。发现里面不光导了和 mybatis-plus 的相关依赖,还导入了 mybatis 以及 mybatis 和 spring 整合包,这也是体现了 MyBatis-Plus 是基于 MyBatis 框架基础上开发的增强型工具。
      在这里插入图片描述

    3、创建 User 实体类

    • 在编写实体类代码之前,为了简化开发,在此介绍一个工具 —— lombok。Lombok 是一个Java类库,提供了一组注解,用于简化 POJO 实体类开发,使用该工具,我们就无需再书写 setter 和 getter 方法,toString 方法,构造器方法 …

    • 使用之前我们需要先导入 lombok 的依赖包。

      org.projectlombok lombok
    • 使用 lombok 简化开发的方式定义 User 实体类。

      @Setter // 添加 setter 方法
      @Getter // 添加 getter 方法
      @ToString // 添加 toString 方法
      @EqualsAndHashCode // 添加 equals 和 hashCode 方法
      @NoArgsConstructor // 添加无参构造器
      @AllArgsConstructor // 添加全参构造器
      public class User {
      private Integer id;
      private String username;
      private Integer age;
      private String password;
      }

    • 通过使用一些注解,来代替之前的书写方式,这样也使得实体类看着更整洁一些,但是每次实体类前面都得写这么多的注解,总会觉得有些麻烦,有没有一种更简单的方式呢?答案当时是肯定的,技术的每一次进步都是为了让我们能够更轻松的开发(也正是因为开发过程中想懒省事,在不断的推动技术的进步)。

    • 使用一个 @Data 注解替代上述全部注解,在之后的开发过程中,定义实体类时就可以使用该方式简化开发,非常的方便。

      @Data
      public class User {
      private Integer id;
      private String username;
      private Integer age;
      private String password;
      }

    4、配置数据库信息

    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/ssm
        username: root
        password: 123456
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 以上是我的数据库信息,你们需要换成自己的。

    5、编写数据访问层 UserMapper

    • 只需要定义一个 UserMapper 接口使其继承 BaseMapper,并使用泛型将 User 传入。

    • 之后其他所有的方法都无需定义,因为 BaseMapper 中已经定义了许多常用的 CRUD 方法。

      @Mapper
      public interface UserMapper extends BaseMapper {
      }

    6、测试

    • 在此只是为了测试能否成功调用到相应的方法,所以不再定义业务逻辑层,表示层等等。

    • 明明 UserMapper 中并没有定义这些方法,为了可以调用呢?这是因为 BaseMapper 中定义了这些方法,我们可以直接拿过来用。
      在这里插入图片描述

    • 简单测试以下根据 ID 查询方法。

      @SpringBootTest
      class MybatisplusApplicationTests {
      @Autowired
      private UserMapper userMapper;

      @Test
      void testSelectById() {
          User user = userMapper.selectById(1);
          System.out.println(user);
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5

      }

    • 运行之后惊奇的发现,竟然查出结果了。
      在这里插入图片描述

    • 通过这个入门案例,也告诉了我们 MyBatis-Plus 的强大之处,又替我们做了许多事情,这也是为什么慢慢的人们更喜欢使用 MyBatis-Plus 的原因。

    ?? 以上就是文章的全部内容啦,诸佬如果有任何建议都可以提哦。
    ?? 创作不易,如果觉得对您有帮助的话,欢迎关注点赞??收藏??哦。

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    商标怎么续展?
    【面试题】15个提高Javascript开发技巧
    学习笔记——Java Stream 源码学习
    pyppeteer模块常用方法
    Python算法练习 10.11
    前后端分离项目,vue+uni-app+php+mysql电影院售票系统(H5移动项目) 开题报告
    SpringMVC返回不带引号的字符串方案汇总
    Mybatis条件语句 status != ““,status = 0时不生效
    vim编辑器
    k8s--基础--21--Statefulset
  • 原文地址:https://blog.csdn.net/m0_67402013/article/details/126080606