java– 实现缓存Spring方法级别注释vs Hibernate二级缓存

java– 实现缓存Spring方法级别注释vs Hibernate二级缓存,第1张

概述我正在努力实现某些静态数据的缓存.我有两种方法:>使用Spring框架注释使用方法级别缓存.>启用二级缓存,以便hibernate管理数据的缓存哪种方法效果最好?我必须考虑哪些事情?最佳答案如果所有事情都等于考虑更喜欢方法调用结果的Spring缓存,那么原因是在服务层级别推理缓存更简单.Hibernate二级缓存工作正常,但在我看来更难以推理,它

我正在努力实现某些静态数据的缓存.

我有两种方法:

>使用Spring框架注释使用方法级别缓存.
>启用二级缓存,以便hibernate管理数据的缓存

哪种方法效果最好?
我必须考虑哪些事情?最佳答案如果所有事情都等于考虑更喜欢方法调用结果的Spring缓存,那么原因是在服务层级别推理缓存更简单.

Hibernate二级缓存工作正常,但在我看来更难以推理,它有更多的陷阱.例如,它不适用于查询,仅适用于通过ID查找或加载惰性关联.

实际上,默认情况下加载延迟关联是OFF,需要在集合级别使用hibernate特定注释启用.

要查询查询结果,您还需要使用查询缓存,它只缓存仅返回原始值的ID和查询.然后,针对二级缓存解析缓存查询的ID.

在这两种情况下和一般的缓存中,问题通常是找到使缓存无效的正确时刻.两种方式都允许在缓存提供程序级别(如ehcache)配置到期和最大元素/内存数.

为了明确地清除缓存,Spring提供了@Cacheevict方法注释,为了比较,这里是clearing the Hibernate second level cache的推荐方法.

另外看看这篇写得很好的博文:Truly Understanding the Hibernate Second Level and Query caches. 总结

以上是内存溢出为你收集整理的java – 实现缓存Spring方法级别注释vs Hibernate二级缓存全部内容,希望文章能够帮你解决java – 实现缓存Spring方法级别注释vs Hibernate二级缓存所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1242874.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存