MyBatis-Plus入门指南:简化数据库操作的利器

引言

MyBatis-Plus(简称MP)是一个MyBatis的增强工具,它在MyBatis的基础上进行了扩展和优化,提供了更加便捷和高效的数据库操作方法。本文将介绍MybatisPlus的入门使用,帮助读者快速掌握其基本用法。

官网:MybatisPlus 官网

MybatisPlus的特点

  • 无侵入性:MybatisPlus只做增强不做改变,引入它不会对现有工程产生影响。

  • 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作。

  • 强大的CRUD操作:内置通用Mapper、通用Service,通过少量配置即可实现单表大部分CRUD操作。

  • 支持多种主键策略:包括数据库自增、UUID、雪花算法等。

  • Lambda表达式支持:通过Lambda表达式,方便编写查询条件,无需担心字段写错。

MybatisPlus 的入门使用

1. 建库建表

打开 Navicat 或其他数据库管理软件运行以下SQL脚本进行建库建表

CREATE DATABASE `mybatis_plus` /*!40100 DEFAULT CHARACTER SET utf8mb4 */; 
use `mybatis_plus`; 
CREATE TABLE `user` ( 
    `id` bigint(20) NOT NULL COMMENT '主键ID', 
    `name` varchar(30) DEFAULT NULL COMMENT '姓名', 
    `age` int(11) DEFAULT NULL COMMENT '年龄', 
    `email` varchar(50) DEFAULT NULL COMMENT '邮箱', 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入几条测试数据

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');

2. 创建工程

使用 Spring Initializer 快速初始化一个 Spring Boot 工程

image-20220519140839640 image-20220519141335981 image-20220519141737405 image-20220519141849937

安装 Lombok 插件

image-20220519143257305

3. 引入 MyBatis-Plus 的依赖

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

4. 配置编码

配置 application.yml 文件

#配置端口
server:
port: 80

spring:
#配置数据源
datasource:
  #配置数据源类型
  type: com.zaxxer.hikari.HikariDataSource
  #配置连接数据库的信息
  driver-class-name: com.mysql.cj.jdbc.Driver
  url: jdbc:mysql://localhost:3306/mybatis_plus?characterEncoding=utf-8&useSSL=false
  # 注意用户名和密码换成自己数据库对应的
  username: {username}
  password: {password}

#MyBatis-Plus相关配置
mybatis-plus:
configuration:
  #配置日志
  log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

5. 创建启动类

在 Spring Boot 启动类中添加 @MapperScan 注解,扫描 Mapper 文件夹

@SpringBootApplication
@MapperScan("指定Mapper接口所在的包")
public class MybatisPlusDemoApplication {
public static void main(String[] args) {
	SpringApplication.run(MybatisPlusDemoApplication.class, args);
}
}

6. 创建实体类

编写实体类 User.java(此处使用了 Lombok 简化代码)

@Data
@TableName("user")  // 这里使用了MybatisPlus的注解,用于指明实体类对应的数据库表名
public class User {
// User实体类与数据库表user的字段需要完全对应
  private Long id;
  private String name;
  private Integer age;
  private String email;
}

7. 继承BaseMapper接口

编写 Mapper 包下的 UserMapper 接口:创建一个Mapper接口,继承MybatisPlus提供的BaseMapper接口,并指定泛型类型为前面创建的实体类。

public interface UserMapper extends BaseMapper<User> {}

8. 测试查询

现在,可以通过注入UserMapper接口,并使用其提供的方法进行数据库操作了。编写一个测试类 MyBatisPlusTest.java

@SpringBootTest
public class MyBatisPlusTest {
	// 注入 UserMapper 接口
  @Resource
  private UserMapper userMapper;

  /**
   * 测试查询所有数据
   */
  @Test
  void testSelectList(){
	//通过条件构造器查询一个list集合,若没有条件,则可以设置null为参数
	  List<User> users = userMapper.selectList(null);
	  users.forEach(System.out::println);
  }
}

测试结果:

User{id=1, name='Jone', age=18, email='test1@baomidou.com'}  
User{id=2, name='Jack', age=20, email='test2@baomidou.com'}  
User{id=3, name='Tom', age=28, email='test3@baomidou.com'}  
User{id=4, name='Sandy', age=21, email='test4@baomidou.com'}  
User{id=5, name='Billie', age=24, email='test5@baomidou.com'}

总结

本文介绍了MybatisPlus的入门使用,包括引入依赖、配置数据源、创建实体类、继承BaseMapper接口和使用MybatisPlus进行数据库操作等步骤。通过简单的配置和代码编写,你就可以快速使用MybatisPlus进行数据库操作了。希望本文能够帮助你更好地理解和使用MybatisPlus。

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值