Mybatis-Plus,真香!

前言

mybatis相信都不陌生,目前互联网公司大部分都使用mybatis作为持久层框架,无他,因为可以直接在xml文件中编写SQL语句操作数据库,灵活。但是我们在使用的时候,也会发现有很多增删改查的SQL是每个表都会有的基本操作,如果每个表都写一套增删改查的SQL显然是非常耗时耗力的。

于是乎,就有了mybatis-plus这个框架。正如官网所说,mybatis-plus是为简化开发而生

mybatis-plus有以下特点:

  • 只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。
  • 只需简单配置,即可快速进行单表CRUD操作,节省大量时间。
  • 代码生成,物理分页,性能分析等功能一应俱全。

一、整合mybatis-plus

这里用的是SpringBoot2.5.2做演示。首先导入依赖:

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.2.0</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
<!-- 引入 mybatis-plus -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.3.0</version>
</dependency>

然后在application.properties文件配置数据库信息:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/user?createDatabaseIfNotExist=true
spring.datasource.username=root
spring.datasource.password=root123456
#mapper.xml文件路径地址
mybatis-plus.mapper-locations=classpath:mapper/*Mapper.xml

在启动类加上扫描注解:

@SpringBootApplication
@MapperScan(basePackages = "com.yehongzhi.mydemo.mapper")
public class MydemoApplication {
   
    public static void main(String[] args) {
   
        SpringApplication.run(MydemoApplication.class, args);
    }
}

其实这样就完成了,但是我们要建个表进行测试。

CREATE TABLE `user` (
  `id` char(36) NOT NULL DEFAULT '' COMMENT 'ID',
  `name` varchar(255) DEFAULT '' COMMENT '姓名',
  `age` int(3) DEFAULT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- 初始化4条数据
INSERT INTO `user`.`user` (`id`, `name`, `age`) VALUES ('1345fc0985b111eba0e488d7f66fdab8', '观辰', '20');
INSERT INTO `user`.`user` (`id`, `name`, `age`) VALUES ('d47561e885b011eba0e488d7f66fdab8', '姚大秋', '30');
INSERT INTO `user`.`user` (`id`, `name`, `age`) VALUES ('ef2741fe87f011eba0e488d7f66fdab8', '周星驰', '60');
INSERT INTO `user`.`user` (`id`, `name`, `age`) VALUES ('ff784f6b85b011eba0e488d7f66fdab8', '李嘉晟', '33');

建了表之后,再创建一个User实体类对应:

//表名
@TableName("user")
public class User {
   
	//主键
    @TableId(type = IdType.UUID)
    private String id;
	//姓名
    private String name;
	//年龄
    private Integer age;
    //getter、setter方法
}

接着创建UserMapper接口类,,然后继承BaseMapper:

@Repository
public interface UserMapper extends 
  • 9
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值