如果每个事务使用单独的会话,Hibernate第一级缓存的用途是什么?

时间:2017-07-26 13:30:50

标签: hibernate

我在我的应用程序中使用了hibernate。我为每个事务使用单独的会话对象。然后会话缓存如何有用?我是否必须使用其他级别的缓存。?

1 个答案:

答案 0 :(得分:0)

您在会话中调用的所有持久,更新,删除操作都将存储在该缓存中。 在刷新持久性上下文之后将触发DB,因此这是将该缓存的内容传输到DB的时刻。因此,它仍然可以提高您的性能,即使它仅限于单个会话。

当你试图找到一个实体并且它已经在缓存中时,有可能数据库不会受到该查找的影响 - 这是另一种可能的性能提升。

有所谓的二级缓存,不仅限于单个持久化上下文,您可以阅读它们,但这是一个更复杂的主题。 ;)