Mybatis-plus 自动注入公共字段
1.选对需要设置的公共字段进行分类时需要插入更新,还是修改更新,还是插入和修改都更新
2.创建拦截器
@Component
@Slf4j
public class StaffCenterMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
try {
// 根据自己的业务获取参数信息
UserInfo userInfo = LoginUtils.getLoginUser().getUserInfo();
log.info("======插入拦截添加公共字段,对象信息为{}====", userInfo);
if (Objects.nonNull(userInfo)) {
this.setFieldValByName("createrId", userInfo.getId(), metaObject);
this.setFieldValByName("createrName", userInfo.getFullName(), metaObject);
this.setFieldValByName("updaterId", userInfo.getId(), metaObject);
this.setFieldValByName("updaterName", userInfo.getFullName(), metaObject);
}
} catch (Exception e) {
log.error("插入拦截发生异常====信息为{}", e.getMessage());
}
}
@Override
public void updateFill(MetaObject metaObject) {
try {
// 根据自己的业务获取参数信息
UserInfo userInfo = LoginUtils.getLoginUser().getUserInfo();
log.info("======执行修改拦截添加公共字段,对象信息为{}====", userInfo);
if (Objects.nonNull(userInfo)) {
this.setFieldValByName("updaterId", userInfo.getId(), metaObject);
this.setFieldValByName("updaterName", userInfo.getFullName(), metaObject);
}
} catch (Exception e) {
log.error("修改拦截发生异常====信息为{}", e.getMessage());
}
}
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步