news 2026/4/25 12:26:51

Mybatis-plus自动填充字段

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Mybatis-plus自动填充字段

自动填充功能通过实现 com.baomidou.mybatisplus.core.handlers.MetaObjectHandler 接口来实现

@DatapublicclassUser{@TableId(type=IdType.AUTO)privateLongid;privateStringusername;// 仅在插入时填充@TableField(fill=FieldFill.INSERT)privateLocalDateTimecreateTime;// 在插入和更新时都填充@TableField(fill=FieldFill.INSERT_UPDATE)privateLocalDateTimeupdateTime;// 仅在插入时填充@TableField(fill=FieldFill.INSERT)privateStringcreateBy;// 在插入和更新时都填充@TableField(fill=FieldFill.INSERT_UPDATE)privateStringupdateBy;}
@Component@Slf4jpublicclassMyMetaObjectHandlerimplementsMetaObjectHandler{@OverridepublicvoidinsertFill(MetaObjectmetaObject){log.info("开始插入填充...");// 填充创建时间this.strictInsertFill(metaObject,"createTime",LocalDateTime.class,LocalDateTime.now());// 填充更新时间(插入时与创建时间一致)this.strictInsertFill(metaObject,"updateTime",LocalDateTime.class,LocalDateTime.now());// 填充创建人(模拟从上下文获取当前登录用户)this.strictInsertFill(metaObject,"createBy",String.class,getCurrentUser());// 填充更新人(插入时与创建人一致)this.strictInsertFill(metaObject,"updateBy",String.class,getCurrentUser());}@OverridepublicvoidupdateFill(MetaObjectmetaObject){log.info("开始更新填充...");// 填充更新时间this.strictUpdateFill(metaObject,"updateTime",LocalDateTime.class,LocalDateTime.now());// 填充更新人this.strictUpdateFill(metaObject,"updateBy",String.class,getCurrentUser());}// 获取当前用户(实际项目中从Token/Session解析)privateStringgetCurrentUser(){returnOptional.ofNullable(SecurityContextHolder.getContext()).map(SecurityContext::getAuthentication).map(Authentication::getName).orElse("system");}}

流程

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/24 7:36:05

python学习记录14~

文章目录19. linux命令19.1 目录操作命令19.1.1 cd19.1.2 ls目录查看19.1.3 目录操作19.1.4 文件操作命令19.1.5 压缩文件操作命令19.1.6 其他常见命令19. linux命令 19.1 目录操作命令 19.1.1 cd 19.1.2 ls目录查看 ls和dir都可以查看当前目录下所有文件,ls会显示…

作者头像 李华
网站建设 2026/4/24 23:14:44

异步串行通信及UART硬件工作机制

异步串行通信原理外设电路根据波特率在相应的时间点对引脚上的电平进行采样,并根据采样结果将电平信号转化为相应的数字值(也就是0或1),并且填充到相应的寄存器。这样一个过程就是物理信号转化成数字信号的过程。提出有关问题既然…

作者头像 李华
网站建设 2026/4/25 0:44:31

GLM-4.6V-Flash-WEB模型能否识别风筝飞行姿态与稳定性?

GLM-4.6V-Flash-WEB模型能否识别风筝飞行姿态与稳定性? 在户外放风筝的场景中,新手常会困惑:“我的风筝飞得稳吗?”“线绷得太紧是不是要掉下来了?”这类问题看似简单,却涉及对视觉信息的综合理解&#xff…

作者头像 李华
网站建设 2026/4/25 2:17:37

彻底理解CountDownLatch

CountDownLatch 是 Java 并发包(java.util.concurrent)中一个非常经典且实用的同步工具类,由 Doug Lea 设计。它的核心思想是:让一个或多个线程等待,直到其他线程完成一组操作(“倒计时归零”)后…

作者头像 李华