可以在配置文件中把show_sql打开,如果是查询的数据库,那么应该输出sql语句,如果没有输出,那么查询的是缓存
补充一下,hibernate二级缓存是缓存单个实体,类似于key-value对,不能缓存列表

解决方案 »

  1.   

    还可以在get缓存对象的实现中加入日志记录  比如:log.debug("get item from  cache"+current_date);
    就可以判断了,其实楼主不必怀疑这个的,呵呵
      

  2.   

    DAO写两个一个查询的方法;
    然后,用主方法,先后执行两个方法,你会发现只有一个搜索语句,这样表示你已经使用二级缓存了;
    查看方式,要嘛用show_sql,判断语句;再者是用日志,
    大多数应该是通过个人的臆测,然后测试查看show_sql,遇到bug用日志
      

  3.   

    没有HQL日志,就说明是从二级缓存拿了数据