MybatisPlus学习(四)---DML编程控制

id生成策略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

public class Book {
    @TableId(type = IdType.AUTO)
    private Long id;
    private String type;
    private String name;
    private String description;
}

全局设置

可以在application.yml配置文件中对mybatisplus做全局配置

1.type-prefix:tb_ 表示为实体类的自动映射名加上tb_前缀
如User实体类如果不写@TableName(“表名”)注解的话,mybatisplus会在数据库中自动查找表名为user的表

2.id-type: auto 表示为配置id生成策略

在这里插入图片描述

多记录操作

deleteBatchIds()和selectBatchIds()方法可以进行多记录操作,两个方法中都需要传入一个集合对象

		//根据主键删除多条记录
        List<Long> list=new ArrayList<>();
        list.add(100000000L);
        list.add(100000001L);
        list.add(100000002L);
        bookDao.deleteBatchIds(list);
         //根据主键查询多条记录
        List<Long> list=new ArrayList<>();
        list.add(1L);
        list.add(2L);
        list.add(3L);
        bookDao.selectBatchIds(list);

逻辑删除

数据不做真正的删除,通过添加字段的方式来表示数据的删除状态,如果添加的字段值为0,则表示数据没删除,如果为1,则表示数据已经删除

1.数据库表中添加字段deleted

在这里插入图片描述

2.创建实体类属性,最好和数据库中名称一致

在这里插入图片描述

3.测试结果

删除id为1的数据
在这里插入图片描述

4.原理

实际上对数据库执行的是update操作
在这里插入图片描述
在查询全部数据的时候,不会查询到deleted为1的数据,因为在执行sql语句的时候会自动加上deleted=0条件;

5.可以通过mybatisplus全局配置来设置逻辑删除

在这里插入图片描述

乐观锁

为了解决并发问题,mybatisplus提供了乐观锁机制
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值