diff --git a/orm/src/main/java/com/zfoo/orm/cache/EntityCache.java b/orm/src/main/java/com/zfoo/orm/cache/EntityCache.java index 51a94b90..15182bde 100644 --- a/orm/src/main/java/com/zfoo/orm/cache/EntityCache.java +++ b/orm/src/main/java/com/zfoo/orm/cache/EntityCache.java @@ -139,10 +139,7 @@ public class EntityCache, E extends IEntity> imple @Override public void update(E entity) { - AssertionUtils.notNull(entity); - var currentPnode = cache.getIfPresent(entity.id()); - if (currentPnode == null) { currentPnode = new PNode<>(entity); cache.put(entity.id(), currentPnode); @@ -168,6 +165,16 @@ public class EntityCache, E extends IEntity> imple currentPnode.setModifiedTime(TimeUtils.now() + 100); } + @Override + public void updateUnsafe(E entity) { + var currentPnode = cache.getIfPresent(entity.id()); + if (currentPnode == null) { + currentPnode = new PNode<>(entity); + cache.put(entity.id(), currentPnode); + } + currentPnode.setModifiedTime(TimeUtils.now() + 100); + } + @Override public void updateNow(E entity) { update(entity); diff --git a/orm/src/main/java/com/zfoo/orm/cache/IEntityCache.java b/orm/src/main/java/com/zfoo/orm/cache/IEntityCache.java index 5388bbbf..24f57ec7 100644 --- a/orm/src/main/java/com/zfoo/orm/cache/IEntityCache.java +++ b/orm/src/main/java/com/zfoo/orm/cache/IEntityCache.java @@ -32,6 +32,11 @@ public interface IEntityCache, E extends IEntity> */ void update(E entity); + /** + * 同update(),不会校验更新的线程是否一致 + */ + void updateUnsafe(E entity); + /** * 更新缓存中的数据,立刻写入到数据库 */