MybatisPlus

mybatis-plus 使用依赖

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

注解

@MapperScan

  • 作用 : Spring Boot 启动类
  • 描述 : 扫描 mapper 接口,继承的 BaseMapper 接口,MyBatis-Plus 内置的 sql 接口
    【就是将扫描的文件注入为 bean,交给 Spring Boot 管理对象】
@SpringBootApplication
@MapperScan("com.baomidou.mapper")
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

@TableName("t_m_user")

  • 作用 : 实体类
  • 描述 : 将实体类与对应的数据库表名相映射

@TableLogic(value = "0", delval = "1")

  • 作用 : 实体类字段
  • 描述 : 如果想使用逻辑删除,必须在字段上设置 注解
    • delval : 逻辑删除值
    • value : 逻辑未删除值
sql ==>  Preparing: UPDATE t_m_user SET is_deleted=1 WHERE id=? AND is_deleted=0

@TableField(value="columnName", fill = FieldFill.INSERT_UPDATE)

  • 作用 : 实体类字段
  • 描述 :
    • value:对应数据库字段名,如果不设置,则默认字段与数据库字段对应。
    • fill:当插入时或修改时,可以自动填充的字段,比如:修改时间,创建时间等字段
      • 设置完成后,然后再实现字段填充控制器。一定要加 @Component
@Component
public class AutoFill implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        this.strictInsertFill(metaObject, "gmtCreate", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐)
        updateFill(metaObject);
//        this.setFieldValByName("gmtCreate", LocalDateTime.now(), metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
//        this.setFieldValByName("gmtModified", LocalDateTime.now(), metaObject);
        this.strictUpdateFill(metaObject, "gmtModified", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐)
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值