项目中数据库表设计原则用到了逻辑删除:数据本身没有被删除,只是将deleted字段设置为1

mybatis-plus在逻辑删除方面的设置如下:

mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl//sql打印
global-config:
db-config:
logic-delete-field: deleted//逻辑删除
logic-delete-value: 1
logic-not-delete-value: 0

在实体中,相关的设置如下:

 /**
* 逻辑删除 1删除 0 未删除
*/
@TableLogic
private Integer deleted;

测试过,全局配置和在实体中加入@TableLogic注解,可以二选一,因为在实体中加入太麻烦,所以建议全局配置,实体中可以不写注解,也可以达到逻辑删除的效果

最后:关于deleted在数据库的存储问题,我一直存的类型是tinyint(1) ,这是对的,因为它的选值不是0就是1

今天在用代码生成器的时候,发现生成的实体是Boolean类型的,查询资料后的结论是,tinyint(1)对应Boolean

关键的问题是,我以为这个1是长度,其实不是,tinyint(1)理论上只能存储0和1(实测实际上也可以存其他值),要存其他值可以设置为tinyint(4)

建议:以后将只存储一个数字的字段设置为tinyint(4), 包括逻辑删除,这样在用代码生成器时自动反射为Integer

最后结论:

1. 逻辑删除用mybatis-plus的全局配置即可

2. 只存储一个数字的字段设置为tinyint(4), 包括逻辑删除deleted

最新文章

  1. mysql在linux下的安装
  2. MongoDB 安装(Window/Linux)
  3. nginx二级域名配置到文件夹
  4. UML类图新手入门级介绍
  5. echars3.0 柱状图y轴字体斜放
  6. iOS9 http不能访问网络——在Xcode中将https改成http方式
  7. 如何让你的eclipse运行更快和eclipse常用快捷键
  8. Missing Number, First Missing Positive
  9. uestc Palindromic String
  10. vi 快捷键积累
  11. 开玩笑Web它servlet(五岁以下儿童)---- 如何解决servlet线程安全问题
  12. maven仓库总结,maven私服搭建
  13. Mycat 分片规则详解--固定 hash 分片
  14. [LeetCode] Contain Virus 包含病毒
  15. 转自阿里云邪-如何从小白成长为 Apache Committer?
  16. html/css/js-横向滚动条的实现
  17. Notes of Daily Scrum Meeting(12.24)
  18. HDU3501——欧拉函数裸题
  19. 【JEECG技术文档】JEECG online 表单填值规则使用说明
  20. WinDbg F9时“code not found breakpoint not set”

热门文章

  1. $(...).bootstrapTable is not a function (已解决)
  2. Linux:grep 查找文件内容
  3. 从0搭建Vue3组件库(四): 如何开发一个组件
  4. sqlserver生成指定的序列
  5. MogDB 学习笔记之 -- 索引失效
  6. C# 元组类型和元组文本
  7. [GKCTF2021]RRRRSA
  8. '大龄‘后端程序员,快速捡起ECMAScript6
  9. 提升IIS权限
  10. vue3 、typescript环境, props自定义类型propType