5.MyBatis-Plus ActiveRecord模式

5.MyBatis-Plus ActiveRecord模式

ActiveRecord模式

Mybatis-Plus中提供了ActiveRecord模式,支持ActiveRecord形式调用,实体类只需继承Model类即可实现基本CRUD操作,简单来说就是一个实体类继承Model类,并通过注解与数据库的表名进行关联。这样就可以通过实体类直接进行表的简单增删改查操作。

和BaseMapper其实是类似的

package com.example.wx_test.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;

@TableName("t_department")
@Data
@EqualsAndHashCode(callSuper = false)
public class Department extends Model<Department> {
    @TableId(type = IdType.AUTO)
    private Integer id; // 编号

    private String name; // 名称

    private String remark; // 备注

}

insert

@Test
    public void insert(){
        Department department = new Department();
        department.setName("神秘部门");
        department.setRemark("神秘部门测试");
        boolean result = department.insert();
        System.out.println(result);
    }

运行结果
在这里插入图片描述

updatebyId

@Test
public void updatebyId(){
    Department department = new Department();
    department.setId(14);
    department.setName("摸鱼部门");
    department.setRemark("摸鱼部门测试");
    boolean result = department.updateById();
    System.out.println(result);
}

运行结果
在这里插入图片描述

insertOrUpdate

@Test
public void insertOrUpdate1(){
    Department department = new Department();
    department.setId(15);
    department.setName("划水部门");
    department.setRemark("划水部门测试");
    boolean result = department.insertOrUpdate();
    System.out.println(result);
}

数据库中已存在id为15的数据,进行更新,结果如下:
在这里插入图片描述

@Test
public void insertOrUpdate2(){
    Department department = new Department();
    department.setId(16);
    department.setName("划水部门1");
    department.setRemark("划水部门测试1");
    boolean result = department.insertOrUpdate();
    System.out.println(result);
}

数据库中不存在id为16的数据,执行insert操作
在这里插入图片描述

deleteById

@Test
public void deletebyId1(){
    Department department = new Department();
    department.setId(16);
    //两种方法删除
    //实体类对象id属性不为空,此处删除id为16的数据
    department.deleteById();
    //指定删除的id,此处删除id为15的数据
    department.deleteById(15);
}

运行结果

在这里插入图片描述

selectById

@Test
public void selectById(){
    Department department = new Department();
    department.setId(1);
    //两种方法查找
    //实体类对象id属性不为空,此处查找id为1的数据
    department.selectById();
    //指定查找的id,此处查找id为2的数据
    department.selectById(2);
}

运行结果
在这里插入图片描述

selectAll

@Test
public void selectAll(){
    Department department = new Department();
    department.selectAll();
}

在这里插入图片描述

selectByQueryWrapper

@Test
public void selectByQueryWrapper(){
    Department department = new Department();
    QueryWrapper<Department> queryWrapper = new QueryWrapper<>();
    queryWrapper.like("name","部");
    List<Department> departmentList = department.selectList(queryWrapper);
    System.out.println(departmentList);
}

在这里插入图片描述
参考资料

  1. https://www.bilibili.com/video/BV1KV411U7pH?p=19
  2. https://blog.csdn.net/qq924862077/article/details/81836309?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165120436016781483766564%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165120436016781483766564&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-81836309.142v9pc_search_result_cache,157v4control&utm_term=activerecord&spm=1018.2226.3001.4187
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值