nhibernate - 如何在二级缓存中只保留最后一条记录?

标签 nhibernate caching second-level-cache

每一秒我都会存储很多对象 Foo 但新对象会与以前的对象进行比较。

我可以将 NHibernate 二级缓存配置为仅保留最后一个 Foo 对象还是我应该自己实现?

小语境:
我有对象 Doo,它被缓存并引用 LastFoo 到对象 Foo。 Doo 被缓存,但 Foo 没有。也许这个缓存只能通过引用最后一个 Foo 来完成?

更多背景:
创建新的 Foo 时,很明显它将保存在数据库中。我通过 LastFoo 属性引用它。当创建下一个 Foo 时,我必须与前一个进行比较,并且只有那个。我可以从 LastFoo 获取它,但 NHibernate 总是查询它。

如何避免前一个 Foo 的数据库命中(只有这个,我不想缓存所有 Foo 对象)?甚至可以使用 NHibernate 还是我需要自己缓存它?

最佳答案

我决定添加可缓存的实体 LatestFoo 并引用它。

关于nhibernate - 如何在二级缓存中只保留最后一条记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8472340/

相关文章:

python - 枚举 Django 数据库缓存中的键

caching - Shopify 缓存 - 哪些操作导致清除缓存

java - Infinispan JPA 二级缓存默认值

generics - 迁移到 NHibernate 4.0.3.4000 时,Iesi.Collections.Generic.LinkedHashSet<T> 是 Iesi.Collections.Generic.ISet<T> 的最佳替代品吗

.net - NHibernate:覆盖 Equals 和 GetHashCode 的原因

caching - 每行缓存位数和总长度

java - Hibernate 中缓存并发性中的只读与非限制读写

Nhibernate 和 SetCacheable 与二级缓存

c# - 为什么 Fluent 的 NHibernate 的 AutoMapping 会忽略枚举类型?

.net - 与 Iesi.Collections 相关的 System.IO.FilenotFoundException