关于hibernate缓存的问题

    技术2022-05-19  37

    缓存的作用主要是用来提高性能,可以简单的理解成一个Map;使用缓存涉及到三个操作:把数据放入缓存,从缓存中获取数据,删除缓存中的无效数据 缓存也有可能溢出的。。可以用evict跟clear清除

     

     

    比如第一次查询时是在数据库,如果第二次查询一样的数据就不需要去查询数据库,直接在缓存中查询,这样就可以提高查询的效率

    下面的这些数据都是可以在hibernate.properties中查询到的。。。

    具体文件的配置如下:hibernate.cfg.xml

            <property name="hibernate.cache.use_second_level_cache">true</property>        <property name="hibernate.cache.provider_class">org.hibernate.cache.OSCacheProvider</property>               <class-cache class="com.hongfeng.domain.Group" usage="read-only" />

    最后一句也可以配置在对应的XXx.hbm.xml中

    当然还要加上oscache.properties这个配置文件,里面主要设置了缓存的最大容量。。。

     

    Statistics statistics=HibernateUtil.getSessionFactory().getStatistics();查看缓存的具体情况


    最新回复(0)