news 2026/5/22 6:50:48

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/5/15 17:28:15

你的网站SSL证书又要过期了?这个工具能让你永久告别焦虑

01 引言 在当今HTTPS加密成为网站标配的时代,SSL证书的有效管理已成为网站运维中不容忽视的环节。手动追踪数十甚至上百个域名的证书状态不仅耗时耗力,而且极易因疏忽导致证书过期,引发网站访问故障和安全风险。Domain Admin作为一款开源的SS…

作者头像 李华
网站建设 2026/5/11 5:09:03

收藏必学:大模型智能体设计:5大模式+5层次+3配方,从入门到精通

设计模式 vs. 应用层次 设计模式:教智能体“怎么做事”的方法学(如先审稿再改、先分解再执行、边想边做等)。原文将常见的 5 种模式归纳为:反思、工具使用、ReAct、规划、多智能体。应用层次:衡量“能做到哪一步”的能…

作者头像 李华
网站建设 2026/5/13 11:18:09

Flutter / RN / iOS 的 UI 渲染机制,本质差异在哪里?

网罗开发(小红书、快手、视频号同名)大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等方…

作者头像 李华
网站建设 2026/5/11 5:01:23

2026年AI发展趋势:技术迭代、产业革命与伦理挑战

一、技术突破:从架构革命到多模态融合下一代模型架构的实战案例 Mamba架构的工业级应用:微软Azure AI平台部署基于Mamba的时序预测系统,将电力网络故障预警响应速度提升40%,计算能耗降低60%7。DeepSeek-V4的“动态记忆”能力&…

作者头像 李华
网站建设 2026/5/1 7:58:10

国密加密标准下vue网页大文件分片上传思路

作为一名自由职业者,我最近接了一个外包项目。客户是一家在行业内颇具影响力的企业,他们现有的 WEB 系统需要新增大文件上传功能,具体要求是能在页面上支持 10G 左右大文件的上传和续传。 客户对这个项目十分重视,毕竟这关系到他…

作者头像 李华