项目的搭建和mybatis等配置见
尚硅谷-云尚办公【MybatisPlus的介绍和使用】正确运行(day2)-CSDN博客
结果如下,代码和文件压缩包放在最后:
添加
修改【根据id】
删除【根据id和批量删除】
数据库中删除标志位
通过id删除
删除标志位显示为1
此时进行查询工作,会发现只有id=1和id=9可以被查询
批量删除
先通过添加操作增加几条数据,增加后的结果如下:
执行批量删除代码后的结果
条件查询
代码:
package com.yun.oa;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yun.model.model.system.SysRole;
import com.yun.oa.mapper.SysRoleMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.Arrays;
import java.util.List;
/*
* @paragram: myyunshangbangong
* @description:
* @author:
* @create: 2024-01-10
*/
@SpringBootTest
public class TestMPDemo1 {
// 注入
@Autowired
private SysRoleMapper sysRoleMapper;
@Test
public void getAll(){
List<SysRole> sysRoles = sysRoleMapper.selectList(null);
System.out.println(sysRoles);
}
//添加操作
@Test
public void add(){
SysRole sysRole = new SysRole();
// id会自动增长,不需要赋值
sysRole.setRoleName("角色管理2");
sysRole.setDescription("角色管理员");
sysRole.setRoleCode("3");
int rows = sysRoleMapper.insert(sysRole);
System.out.println(rows);
System.out.println(sysRole);
}
// 修改操作
@Test
public void update(){
// 根据id进行查询
SysRole sysRole = sysRoleMapper.selectById(2);
// 设置修改值
sysRole.setRoleName("角色管理员");
// 调用方法实现最终修改
int rows = sysRoleMapper.updateById(sysRole);
System.out.println(rows);
}
// 删除操作
// 需要添加删除标志字段,在创建表时已经加过
@Test
public void deleteById(){
int rows = sysRoleMapper.deleteById(2);
// 得到操作的行号
System.out.println(rows);
}
// 批量删除
@Test
public void deleteBatchIds(){
// 删除id =1 和id= 4的记录
int result = sysRoleMapper.deleteBatchIds(Arrays.asList(1,10));
System.out.println(result);
}
// 条件查询
@Test
public void testQuery1(){
// 创建QueryWrapper对象,调用方法封装条件
QueryWrapper<SysRole> wrapper = new QueryWrapper<>();
// 第一个参数是数据库列的名称,第二个参数是要查询的数据
wrapper.eq("role_name","角色管理");
// 调用mp方法直线查询操作
List<SysRole> sysRoles = sysRoleMapper.selectList(wrapper);
System.out.println(sysRoles);
}
}
工程文件
链接:https://pan.baidu.com/s/1jrUh5cer7hS_IrfXHkmXXg?pwd=z9k0
提取码:z9k0