hibernate cache

    技术2022-05-19  22

    this.closeSession();Session session = this.getSession();if(isFromDB) session.clear(); Query query = session.createQuery(sql); if (isFromDB) {session.clear();  query.setCacheable(false); //不使用缓存 query.setCacheMode(CacheMode.IGNORE); } return query.list();

     

    1.session.clear(),先清除一级缓存

     

    createSQLQuery创建的SQLQuery对象query中设置query.setCacheMode(CacheMode.IGNORE); 设置成CacheMode.IGNORE模式,在读取数据的时候,不和二级缓存交换数据,直接读取数据库。则页面刷新皆为正常显示,因为分页每页显示的数据顶多也就10几20几条,故不读缓存对性能影响不大,可放心使用


    最新回复(0)