如题,不是说Hibernate的Session实现了一级缓存,以后查询对象的时候直接从缓存中拿,那use_query_cache的意思是?
两者有什么区别

解决方案 »

  1.   

    一级缓存和session相关, 简单的说就是你每次执行查询的时候, 结果会放在当前session相关的cache里面, 但这个查询结束后, 这个session也就过期关闭了, 当然cache也无效了.
    use_query_cache是启用二级缓存, 比如ehcache是个典型的实现, 这个缓存喝sessionFactory相关, 就是说只要sessionFactory有效, 则二级缓存就可用. 
    一般说来很少直接操作一及缓存, 但可以通过配置干预二级缓存.