七叶笔记 » java编程 » mybatis-plus的添加与修改详解

mybatis-plus的添加与修改详解

mybatis-plus添加与修改

mybaits-plus帮我们简化了CRUD,这次来说一下添加与修改的操作

由于我们所有的 SQL 是不可见的,我们希望知道他是怎么执行的,所以我们必须要看日志。

在properties中添加日志功能:

配置日志完毕之后,后面的学习就需要注意这个自动生成的SQL

插入操作

数据库插入的 id 默认值为:全局的唯一 id

主键生成策略

分布式系统唯一 id 生成

这里主键是通过一个雪花算法进行完成的。

主键自增

我们需要配置主键自增

1.实体类上 @TableId(type= IdType.AUTO)

2.数据库字段一定要是自增的! 

3.再次插入即可!

补充:主键自增是一种形式,还可以有其他的形式

NONE(1) 未设置主键INPUT(2) 手动输入主键ID_WORKER(3) 默认的全局唯一 idUUID(4) 全局唯一 id uuidID_WORKER_STR(5) 字符串表示法

更新操作

所有的 SQL 都是自动帮我们动态匹配的

自动填充

我们在数据库表中经常会有这样的情况,数据添加与修改的时候需要被记录,每一次操作都需要有时间,所有我们利用自动填充来完成对时间的修改创建时间,修改时间!这些个操作都要自动完成,不希望手动

这里我们直接用代码级别

给数据库表中添加 create_time、update_time 两个字段

实体类上字段属性需要加上注解TableField(fill = FieldFill.INSERT)

编写处理器来处理这个时间特有的注解即可

在工程建立 handler 包,创建一个 MyMetaObjectHandler 类

最后重新测试插入操作,重新测试更新操作,观察时间是否有所变化

mybatis-plus批量添加

mybatis-plus 当前我用的最新版本

找到这里我不用多说了,mybatis-plus源码的批量插入和修改是通过for循环转化为多条的单条SQL循环进行插入和修改,所以该方法是SQL拼接成一条SQL传入数据库

批量插入

记住Java是可以接口多继承的

以上为个人经验,希望能给大家一个参考,也希望大家多多支持七叶笔记。

相关文章