阅读 1553

Mybatis Plus 增删改查的实现(小白教程)

本文主要介绍了Mybatis Plus 增删改查,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

目录
  • 前言

  • 什么是 mybatis-plus?

  • 快速开始

    • 准备环境:

    • 准备数据表

    • IDEA中配置 maven

    • 创建 spring boot 应用

    • 创建mapper接口

    • 添加@MapperScan 扫描 Mapper 文件夹

  • 配置 mybatis 日志

    • CRUD 基本用法

      • insert 操作

      • update 操作

      • delete 操作

      • select 操作

    前言

    在持久层框架中 mybatis 应用比较多,而且比重在逐渐的上升。通常项目的组合是 SSM。mybatis 之所以火,是因为他的灵活,使用方便,优化比较容易。

    mybatis 的直接执行 sql 语句, sql 语句是写在 xml 文件中,使用 mybatis 需要多个 xml 配置文件,在一定程度上比较繁琐。一般数据库的操作都要涉及到CURD。

    mybatis-plus 是在 mybatis 上的增强,减少了 xml 的配置,几乎不用编写 xml就可以做到单表的 CURD,很是方便,极大提供了开发的效率。 我们写程序目的就是让生活更加简单。

    什么是 mybatis-plus?

    MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

    MyBatis-Plus 在 MyBatis 之上套了一层外衣,单表 CURD 的操作几乎都可以由 MyBatis-Plus 代替执行。而且提供了各种查询方式,分页行为。作为使用者无需编写 xml,直接调用 MyBatis-Plus 提供的 API 就可以了。

    快速开始

    几分钟就可以上手 MP,前提是需要熟悉 mybatis,spring 或 spring boot, maven,掌握 lambda 表达式更能提升效率。

    准备环境:

    • 拥有 Java 开发环境以及相应 IDE

    • 熟悉 Spring Boot

    • 熟悉 Maven

    准备数据表

    在这里插入图片描述

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    create database user;
    use user;
    CREATE TABLE `user` (
     `id` int(11) NOT NULL AUTO_INCREMENT,
     `name` varchar(50) DEFAULT NULL,
     `email` varchar(80) DEFAULT NULL,
     `age` int(11) DEFAULT NULL,
     PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
    insert into user values(null,'张三','666666@qq.com',18);

    IDEA中配置 maven

    在这里插入图片描述

    创建 spring boot 应用

    使用 Spring Initializr 快速初始化一个 Spring Boot 工程
    idea 中 File – New Project 选择 Spring Initializr 后填写项目信息,创建工程。

    在这里插入图片描述

    项目信息

    在这里插入图片描述

    依赖选择SQL中的MyBatis Framework

    在这里插入图片描述

    定义项目名称和路径

    在这里插入图片描述

    pom文件添加mybatis-plus依赖

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <!-- mybatis-plus -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.0.5</version>
    </dependency>
    <!-- mysql驱动 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.25</version>
    </dependency>

    application.properties或application.yml 添加数据库配置

    1
    2
    3
    4
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/user
    spring.datasource.username=root
    spring.datasource.password=root

    1
    2
    3
    4
    5
    6
    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/user
        username: root
        password: root

    创建实体类

    在这里插入图片描述

    @TableId 设置主键, IdType.AUTO 使用自动增长产生主键

    创建mapper接口

    在这里插入图片描述

    继承 MyBatis Plus 中的 BaseMapper , 在 UserMapper 中使用 MP 中的方法,实
    现 CURD。

    添加@MapperScan 扫描 Mapper 文件夹

    在这里插入图片描述

    测试

    在这里插入图片描述

    查看数据库

    在这里插入图片描述

    配置 mybatis 日志

    1
    2
    3
    mybatis-plus:
      configuration:
        log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

    在这里插入图片描述


    CRUD 基本用法

    CRUD 的操作是来自 BaseMapper 中的方法。BaseMapper 中共有 17 个方法,CRUD 操作都有多个不同参数的方法。继承 BaseMapper 可以其中的方法。

    BaseMapper 方法列表:

    在这里插入图片描述

    insert 操作

    在这里插入图片描述

    注:insert()返回值 int,数据插入成功的行数,成功的记录数。getId()获取主键值,成功影响行数后会自动将主键值赋值给实体类的主键id。

    update 操作

    在这里插入图片描述

    更新之前的数据库

    在这里插入图片描述

    更新后的数据库

    在这里插入图片描述

    注意:null 的字段不更新

    没有设置email的字段,所以此时的email的字段为null

    在这里插入图片描述

    SQL语句没有设置email

    在这里插入图片描述

    数据库

    在这里插入图片描述

    delete 操作

    删除有多个方法


    deleteById:按主键删除

    在这里插入图片描述

    根据 Map 中条件删除

    在这里插入图片描述

    注:删除条件封装在 Map 中,key 是列名,value 是值,多个 key 之间 and 联接。

    日志:

    在这里插入图片描述

    批量删除

    把要删除的 id 放入 List ,传给 deleteBatchIds()

    在这里插入图片描述

    日志

    在这里插入图片描述

    select 操作

    注:没有查询结果,不会报错。

    在这里插入图片描述

    日志

    在这里插入图片描述

    批量查询记录

    注:根据 id 查询记录,把需要查询的多个 id 存入到 List,调用 selectBatchIds(),

    在这里插入图片描述

    日志

    在这里插入图片描述

    使用 Map 的条件查询
    把要查询的条件字段 put 到 Map,key 是字段,value 是条件值。多个条件是 and联接。调用 selectByMap(),传入 Map 作为参数,返回值是 List 集合。

    在这里插入图片描述

    日志

    在这里插入图片描述

    到此这篇关于Mybatis Plus 增删改查的实现(小白教程)的文章就介绍到这了

    原文链接:https://blog.csdn.net/qq_31762741/article/details/120342983

    服务器评测 http://www.cncsto.com/ 

    服务器测评 http://www.cncsto.com/ 

    站长资源 https://www.cscnn.com/ 

    小鱼创业 https://www.237fa.com/ 


    文章分类
    后端
    版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
    相关推荐