是否有一种简单的方法来使用hibernate日志级别来查看何时使用第一个缓存级别?
如果我正在执行以下hql请求:“来自Document d left join fetch d.folder其中d.id = 2”;有几次,在同一个会话中,是否会使用缓存?
由于
答案 0 :(得分:2)
Hibernate L1缓存按主键存储实体。这意味着,如果您使用load()
或get()
加载相同的实体(我认为这也适用于简单查询,例如:from Document d where d.id=2
),则会缓存它。
在您的情况下,查询有点复杂,您将不得不使用L2。不幸的是,没有记录器指示L1活动(至少不是documented),但看到SQL查询就足够了。