猿问

Hibernate 的一级缓存不适用于布尔类型?

我有一个 spring@Transactional只读服务,它跨越多次调用 a JpaRepository,使用一个使用本机查询的方法返回boolean. 查询很繁重,并且在检查日志时看起来像是使用相同的参数执行了多次。不应该只调用一次吗?使用 Spring 事务时一级缓存是否不起作用?是因为它返回的是 aboolean而不是 an@Entity吗?


慕田峪4524236
浏览 128回答 1
1回答

哆啦的时光机

一级缓存仅适用于EntityManager 可以管理的结果,即实体。(或休眠中的会话)如果您想缓存其他对象或简单类型,我建议将 @Cacheable 注释与某些缓存提供程序一起使用,例如EhCache LINK编辑:您自己的查询不是一级缓存机制的一部分。只有像持久化、合并、更新等简单的操作才能使用它。有关更多信息,请查看本文链接
随时随地看视频慕课网APP

相关分类

Java
我要回答