逻辑删除与联合索引冲突处理(二)
发表于|更新于
|浏览量:
一星陨落,黯淡不了星空灿烂;一花凋零,荒芜不了整个春天。——巴尔扎克
之前写过一篇,用时间实现,今天提供另一种思路
我们的逻辑删除字段,如果和联合唯一索引同时使用,还可以使用下面这一种方式:
如果未删除,使用魔法值
如果已删除,使用NULL
因为mybatisPlus官方文档也提到了:
字段类型支持说明:
- 支持所有数据类型(推荐使用
Integer,Boolean,LocalDateTime)- 如果数据库字段使用
datetime,逻辑未删除值和已删除值支持配置为字符串null,另一个值支持配置为函数来获取值如now()
之前看源码,发现它也是使用替换字符串的方式去做,所以是支持NULL的
并且我们的null并不受唯一索引约束
那我们这里就可以直接使用如下配置:
1 | @TableLogic(delval = StringPool.NULL, value = "existed") |
效果:

删除时效果:

相关推荐
2022-09-12
hutool动态编译+lombok
显示出对别人的欢乐不屑一顾的样子,那是侮辱了别人——玛格丽特·尤瑟纳尔 这里采取了一种讨巧的方式避开了需求,实现了效果 思路是使用lombok官方自带的delombok进行处理: 见:https://gitee.com/dromara/hutool/issues/I56DED delombok官方文档:https://projectlombok.org/features/delombok 代码如下: 12345678910111213141516171819202122232425262728293031package com.ruben;import cn.hutool.core.compiler.CompilerUtil;import cn.hutool.core.io.FileUtil;import cn.hutool.core.util.ReflectUtil;import cn.hutool.core.util.RuntimeUtil;import cn.hutool.core.util.StrUtil;import org.junit.jupiter.api.As...
2023-12-21
Hutool-通过Lambda结缘开源到6.0探索之路
花开如火,也如寂寞。——顾城 分享自己参加ITPUB的开源小秀场
2020-12-31
使用Stream一行获取26个英文字母
成功是从一个失败前进到另一个失败,而期间热情不减的能力。——丘吉尔 代码 1234List<String> A = Stream.iterate("A", e -> String.valueOf((char) (e.charAt(0) + 1))).limit(26).collect(Collectors.toList());System.out.println(A);String a = Stream.iterate("a", e -> String.valueOf((char) (e.charAt(0) + 1))).limit(26).collect(Collectors.joining(","));System.out.println(a); 执行结果
2024-05-04
未来或将用Markdown写JavaDoc
当囊空如洗时才开始节约的话,那就为时太晚了。——塞内加 提案链接:JEP 467: Markdown Documentation Comments 1995 年的 HTML 写 JavaDoc 到现在已经快过时啦,于是 Jonathan Gibbons 提议用 Markdown 写 JavaDoc。目前这个提议在“Proposed to Target”状态,根据社区反响,这个提议很大概率能在 Java SE 23 版本中发布。 新的文档注释将使用 /// 而不是传统的 /** ... */。这样做的好处是: 避免了在文档注释中使用传统注释(如 /*...*/)可能引发的问题。 消除了使用星号的传统注释可能带来的 Markdown 语法冲突。 下面的 JavaDoc 和 Markdown 版本的文档注释对比。 JavaDoc 版本: 1234567/** * Returns a hash code value for the object. This method is * supported for the benefit of hash tables such as t...
2023-08-19
Delimiter
青春如初春,如朝日,如百卉之萌动,如利刃之新发于硎,人生最宝贵之时期也。青年之于社会,犹新鲜活泼细胞之在身。——陈独秀 分享一下:org.springframework.boot.convert.Delimiter的用法 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950/* * Copyright 2012-2019 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-...
2021-07-11
springboot建站脚手架
往者不谏,来者可追——《 论语·微子》 地址:https://gitee.com/VampireAchao/simple-scaffold.git 目录结构: 可以用于搭建一些小型项目,注释齐全 已通过阿里代码审查工具扫描

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog