什么时候hibernate使用它的第一级缓存?如何登录?

时间:2012-02-14 10:40:14

标签: hibernate caching logging

是否有一种简单的方法来使用hibernate日志级别来查看何时使用第一个缓存级别?

如果我正在执行以下hql请求:“来自Document d left join fetch d.folder其中d.id = 2”;有几次,在同一个会话中,是否会使用缓存?

由于

1 个答案:

答案 0 :(得分:2)

Hibernate L1缓存按主键存储实体。这意味着,如果您使用load()get()加载相同的实体(我认为这也适用于简单查询,例如:from Document d where d.id=2),则会缓存它。

在您的情况下,查询有点复杂,您将不得不使用L2。不幸的是,没有记录器指示L1活动(至少不是documented),但看到SQL查询就足够了。

另见: