You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.9 KiB
33 lines
1.9 KiB
// 声明代码所在的包名,这里表明该类属于 com.rabbiter.common 包
|
|
package com.rabbiter.common;
|
|
|
|
// 导入 MyBatis-Plus 框架中的 MetaObjectHandler 接口,用于处理自动填充元数据信息
|
|
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
|
// 导入 MyBatis 框架中的 MetaObject 类,用于对 Java 对象进行反射操作
|
|
import org.apache.ibatis.reflection.MetaObject;
|
|
// 导入 Spring 框架的 Component 注解,用于将该类标记为 Spring 组件,以便 Spring 能够自动扫描并管理该类
|
|
import org.springframework.stereotype.Component;
|
|
// 导入 Java 8 引入的日期时间 API 中的 LocalDateTime 类,用于表示日期和时间
|
|
import java.time.LocalDateTime;
|
|
|
|
// 使用 @Component 注解将该类标记为 Spring 组件,这样 Spring 会在启动时自动将其实例化并纳入管理
|
|
@Component
|
|
// 定义一个名为 AutoFillMetaInfoHandler 的类,该类实现了 MetaObjectHandler 接口,用于处理自动填充元数据信息
|
|
public class AutoFillMetaInfoHandler implements MetaObjectHandler {
|
|
|
|
// 重写 MetaObjectHandler 接口中的 insertFill 方法,该方法在插入数据时自动调用
|
|
@Override
|
|
public void insertFill(MetaObject metaObject) {
|
|
// 调用 MetaObjectHandler 接口提供的 setFieldValByName 方法,为指定字段设置值
|
|
// 第一个参数 "createtime" 表示要设置值的字段名
|
|
// 第二个参数 LocalDateTime.now() 表示当前的日期和时间,作为要设置的值
|
|
// 第三个参数 metaObject 表示要操作的 Java 对象的元数据
|
|
this.setFieldValByName("createtime", LocalDateTime.now(),metaObject);
|
|
}
|
|
|
|
// 重写 MetaObjectHandler 接口中的 updateFill 方法,该方法在更新数据时自动调用
|
|
@Override
|
|
public void updateFill(MetaObject metaObject) {
|
|
// 目前该方法为空,你可以根据需求在其中添加更新时自动填充字段的逻辑
|
|
}
|
|
} |