当前位置: 代码网 > it编程>编程语言>Java > MybatisPlus公共字段自动注入方法实现

MybatisPlus公共字段自动注入方法实现

2025年08月21日 Java 我要评论
在pom.xml文件中引入mybatisplus坐标 <dependency> <groupid>com.baomidou&

在pom.xml文件中引入mybatisplus坐标

            <dependency>
                <groupid>com.baomidou</groupid>
                <artifactid>mybatis-plus-boot-starter</artifactid>
                <version>3.5.1</version>
            </dependency>

创建mybatisplushandler类

说明:通过继承mybatisplus中的metaobjecthandler类,然后重写insertfill和updatefill方法,通过setfieldvalbyname()方法设定公共字段,就可以在进行新增和更新操作前,对方法进行拦截

// mybatisplus 公共字段自动填充
@component
@slf4j
public class mybatisplushandler implements metaobjecthandler {
    @override
    public void insertfill(metaobject metaobject) {
        this.setfieldvalbyname("createtime", localdatetime.now(), metaobject);
        this.setfieldvalbyname("createuser", basecontext.getcurrentid(), metaobject);
    }

    @override
    public void updatefill(metaobject metaobject) {
        this.setfieldvalbyname("updatetime", localdatetime.now(), metaobject);
        this.setfieldvalbyname("updateuser", basecontext.getcurrentid(), metaobject);
    }
}

通过@tablename,@tablefield(fill = fieldfill.xx)注解指定目标实体类以及类中的公共字段

说明:新增类型公共字段就使用.insert,更新就使用.update

@data
@builder
@noargsconstructor
@allargsconstructor
@tablename("employee")
public class employee implements serializable {

    private static final long serialversionuid = 1l;


    @tableid(type = idtype.auto)
    private long id;

    private string username;

    private string name;

    private string password;

    private string phone;

    private string sex;

    private string idnumber;

    private integer status;

    @jsonformat(pattern = "yyyy-mm-dd hh:mm:ss")
    @tablefield(fill = fieldfill.insert)
    private localdatetime createtime;

    @jsonformat(pattern = "yyyy-mm-dd hh:mm:ss")
    @tablefield(fill = fieldfill.update)
    private localdatetime updatetime;

    @tablefield(fill = fieldfill.insert)
    private long createuser;

    @tablefield(fill = fieldfill.update)
    private long updateuser;

}

最后在调用新增或者更新方法时就能自动为公共字段赋值了。

到此这篇关于mybatisplus公共字段自动注入方法实现的文章就介绍到这了,更多相关mybatisplus公共字段自动注入内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com