Mybatisplus学习笔记

学习mybatisplus后主要感觉它主要就分为了代码生成和使用两个部分

使用

例子:
新建数据库并导入数据:注意最好满足开发规范,即在任意一张表中加入create_time和update_time

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 '邮箱',
                create_time DATETIME '创建时间',
                update_time DATETIME '更新时间',
	PRIMARY KEY (id)
           
);
DELETE FROM user;

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, '[email protected]'),
(2, 'Jack', 20, '[email protected]'),
(3, 'Tom', 28, '[email protected]'),
(4, 'Sandy', 21, '[email protected]'),
(5, 'Billie', 24, '[email protected]');

pom文件导入依赖

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

在springboot的aoolication。properties中
配置数据源 和mybatisplus

spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

编写数据表对应的pojo类;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
     
    @TableId(type = IdType.AUTO )
    public Integer id;
    public String name;
    public int age;
    public  String email;

    @TableField(fill = FieldFill.INSERT)
    public Date createTime;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    public Date updateTime;
}

编写与数据库交互的mapper

public interface userMapper extends BaseMapper {
     
}

最后在配置类或启动类上加上
扫描

@MapperScan("com.test.mybatisplus.mapper")

其余插件功能:

分页插件;
自动填充插件;
逻辑删除插件;
性能分析插件;
乐观锁插件;
条件构造器;
自行依照官方文档

代码生成器

原理自行看官方文档;使用时候可以使用使用人人开源的代码生成器

你可能感兴趣的:(generator,mybatis)