我在程式中加入樂觀鎖后,自動填充的更新時間失效了。如果更新時間初始為null,就會有自動填充。但是當資料中更新時間原先就有值的話,自動填充就是失效。這是為什么??? 我用的mybatis-plus版本是3.4.2。 不用樂觀鎖的時候,是可以正常用自動填充的。
求大佬幫我看看,感謝感謝!!!!!!!!
測驗程式:
@Test
public void testOptimisticLocker(){
User user = userMapper.selectById(4L);
user.setName("Lily");
user.setEmail("[email protected]");
userMapper.updateById(user);
}
樂觀鎖組件:
// 注冊樂觀鎖插件
@Bean
public MybatisPlusInterceptor MybatisPlusInterceptor() {
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
return mybatisPlusInterceptor;
}
填充策略:
// 更新時的填充策略
@Override
public void updateFill(MetaObject metaObject) {
log.info("start update fill.....");
//this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
this.strictUpdateFill(metaObject,"updateTime",Date.class,new Date());
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/260803.html
標籤:Java EE
上一篇:Java 流程控制陳述句
