Mybatisplus----DML编程---多记录操作
批量处理数据:
@Test
void testDelete(){
//批量按id删除
List<Long> list = new ArrayList<>();
list.add(1626917366924050434L);
list.add(1626917108852797441L);
list.add(1626916464192487425L);
list.add(1626914551753371650L);
userDao.deleteBatchIds(list); //按id批量查询
List<Long> lists = new ArrayList<>();
lists.add(1l);
lists.add(2l);
lists.add(3l);
userDao.selectBatchIds(lists);
}
逻辑删除:
(1)删除操作业务问题:业务数据从数据库中丢弃
(2)逻辑删除:为数据设置是否可用状态字段,删除时设置状态字段为不可用状态,数据保留在数据库中。
首先在数据库表中添加deleted字段(默认值为0:可用状态)
package com.itheima.domain; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; @Data
//@TableName("tbl_user")
public class User { // @TableId(type = IdType.ASSIGN_ID)
private Long id;
private String name;
@TableField(value = "pwd", select = false)
private String password;
private Integer age;
private String tel;
@TableField(exist = false)
private Integer online; //逻辑删除字段,标记当前记录是否被删除
@TableLogic(value = "0", delval = "1")
private Integer deleted;
}
或者在属性文件中进行全局中配置,不需要 @TableLogic(value = "0", delval = "1")
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/mybatisplus_db?serverTimezone=UTC
username: root
password: 130740
type: com.alibaba.druid.pool.DruidDataSource
main:
banner-mode: off mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
banner: false
db-config:
id-type: assign_id
table-prefix: tbl_
logic-delete-field: deleted
logic-not-delete-value: 0
logic-delete-value: 1
Mybatisplus----DML编程---多记录操作的更多相关文章
- Appfuse:记录操作日志
appfuse的数据维护操作都发生在***form页面,与之对应的是***FormController,在Controller中处理数据的操作是onSubmit方法,既然所有的操作都通过onSubmi ...
- Spring aop 记录操作日志 Aspect
前几天做系统日志记录的功能,一个操作调一次记录方法,每次还得去收集参数等等,太尼玛烦了.在程序员的世界里,当你的一个功能重复出现多次,就应该想想肯定有更简单的实现方法.于是果断搜索各种资料,终于搞定了 ...
- web进阶之jQuery操作DOM元素&&MySQL记录操作&&PHP面向对象学习笔记
hi 保持学习数量和质量 1.jQuery操作DOM元素 ----使用attr()方法控制元素的属性 attr()方法的作用是设置或者返回元素的属性,其中attr(属性名)格式是获取元素属性名的值,a ...
- MVC 记录操作日志与过滤特殊字符
最近进行的MVC系统需要用到记录操作日志和过滤特殊字符的功能,如果每个action中都调用记录日志的方法就太麻烦了,所以根据需要结合mvc的过滤机制 写了个特殊字符验证与记录操作日志的公用类: pub ...
- C# winform编程中多线程操作控件方法
private void Form1_Load(object sender, EventArgs e) { Thread newthread = new Thread(new ThreadStart( ...
- 巧用*_his表记录操作历史
文章转载自「开发者圆桌」一个关于开发者入门.进阶.踩坑的微信公众号 许多OLTP应用的开发者都知道,一些重要的操作要记录操作历史,把操作前的数据备份到历史表,然后再执行相应的修改操作.这样可以获取某个 ...
- Scala学习教程笔记三之函数式编程、集合操作、模式匹配、类型参数、隐式转换、Actor、
1:Scala和Java的对比: 1.1:Scala中的函数是Java中完全没有的概念.因为Java是完全面向对象的编程语言,没有任何面向过程编程语言的特性,因此Java中的一等公民是类和对象,而且只 ...
- Mysql 数据库操作之DDL、DML、DQL语句操作
Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l Show databases 查看数据库列表信息 l 查看数据库中的数据表信息 ,格式: use 数据库名: sh ...
- MySQL入门第二天——记录操作与连接查询
常见SQL语法,请参见w3school:http://www.w3school.com.cn/sql/sql_distinct.asp 易百教程:http://www.yiibai.com/sql/f ...
- MySQL数据库(3)_MySQL数据库表记录操作语句
附: MYSQL5.7版本sql_mode=only_full_group_by问题 .查询当前sql_mode: select @@sql_mode .查询出来的值为: set @@sql_mode ...
随机推荐
- 打开part文件夹
1 #include <uf.h> 2 #include <uf_ui.h> 3 #include <uf_part.h> 4 #include <atlst ...
- dota中的哲理
战术和战略: 6k分和3k分玩家的最重要的区别不是英雄玩的不好,而是整体战略不明确. dota玩家游戏时长超过1000h的比比皆是,这些玩家里面分数差距相当大.高的7k往上,低的2k深坑爬不出来. 这 ...
- SQL相关知识
SQL(Structure Query Language) 结构化查询语言,它是关系型数据库的应用语言,由IBM上世纪70年代开发出来的. SQL语言规范 语句以;封号结束 ...
- POJ--1852-c++实现
因为蚂蚁的朝向不明确,所以,可以根据需要假定朝向方向 首先,当每只蚂蚁朝着离自己最近的端点前进,且不回头则,所需总时间最少 当每只蚂蚁朝着离自己最远的端点前进,所需时间最多,在这期间,会碰到其他蚂蚁, ...
- 一次讲清promise
此文章主要讲解核心思想和基本用法,想要了解更多细节全面的使用方式,请阅读官方API 这篇文章假定你具备最基本的异步编程知识,例如知道什么是回调,知道什么是链式调用,同时具备最基本的单词量,例如page ...
- python+pytest接口自动化
本篇文章是用python+pytest写了一个简单的接口自动化脚本,外加循环请求接口的语法,大家可以参考~ 实例一: import requestsimport pytestimport time c ...
- Jmeter五、jmeter中的逻辑控制器
1.simple controller 提供一个块的结构和控制.更方便,更清晰. 嵌套其他的controller 2.loop controller 循环控制器 控制循环次数 可以使用变量 ${__t ...
- nginx日志分析--可视化
1. 安装依赖 yum install glib2 glib2-devel GeoIP-devel ncurses-devel zlib zlib-devel -y wget https://gith ...
- NOIP2015普及组
T1 金币 很简单的题,控制天数这个变量 #include<iostream> #include<cstring> #include<cmath> #include ...
- Pintia 7-3 列车调度
7-3 列车调度 (25 分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条轨 ...