☰
MyBatis-Plus ActiveRecord模式实战解析
2026/10/13 3:20:52 网站建设 项目流程

对于加上plus这个部分来说, 它是提供了一个支持模式的存在的。

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

原理理解:

简单来说, -plus是在之前的基础之上进行的二次开发。在基本操作方面, 它依然遵循单个操作对应一条SQL语句的规律。其核心逻辑是通过设置参数来获取SQL语句执行后的返回值, 从而实现对执行结果的处理。

我们可以去理解这样一个事实, 那就是“-Plus”其实是在给我们提供一系列操作, 比如简单的增删改查操作, 并且这些sql语句是能够被自动生成的, 它默认提供了不少这样的简单增删改查功能, 它会借助自动生成的sql来完成一些初始化任务, 最终来看其实现的效果和我们自己基于开发所完成的效果是完全一致的。

具体实现:

实体需要继承Model这个类, 并且要加上括号等于符号以及false这个注解所表示的那种注解, 这样做的话, 就不去调用父类里面已经定义的、还有方法里面的逻辑内容了。

@Data

@EqualsAndHashCode(callSuper =false)

publicclassDepartment extends Model

这是一个CRUD这样的操作示例demo。

package com.java1234;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

import com.java1234.entity.Department;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.test.context.junit4.SpringRunner;

import java.util.List;

/**

* @author java1234_小锋

* @site www.java1234.com

* @company Java知识分享网

* @create 2020-08-22 17:07

*/

@RunWith(SpringRunner.class)

@SpringBootTest

publicclassActiveRecordTest {

@Test

publicvoidinsert(){

Department department=newDepartment();

department.setName("xx部门");

department.setRemark("xxx");

boolean insert =department.insert();

System.out.println(insert);

}

@Test

publicvoidupdateById(){

Department department=newDepartment();

department.setId(7);

department.setName("xx部门2");

department.setRemark("xxx2");

boolean b =department.updateById();

System.out.println(b);

}

@Test

publicvoidinsertOrUpdate(){

Department department=newDepartment();

department.setId(8);

department.setName("xx部门2");

department.setRemark("xxx2");

boolean b =department.insertOrUpdate();

System.out.println(b);

}

@Test

publicvoiddeleteById(){

Department department=newDepartment();

department.setId(7);

boolean b =department.deleteById();

System.out.println(b);

}

@Test

publicvoidselectById(){

Department department=newDepartment();

//Department d = department.selectById(1);//方式一

department.setId(1);//方式二

Department d =department.selectById();

System.out.println(d);

}

@Test

publicvoidselectAll(){

Department department=newDepartment();

List departmentList =department.selectAll();

System.out.println(departmentList);

}

@Test

publicvoidselectListByQueryMapper(){

QueryWrapper queryWrapper=newQueryWrapper();

//QueryWrapper queryWrapper2=Wrappers.query();

queryWrapper.like("name","测试");

Department department=newDepartment();

List departmentList =department.selectList(queryWrapper);

System.out.println(departmentList);

}

}

------------------------------------------------------------------------------------------------------------------------------

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询