在合理的设计的情况下,如应用了Hibernte的缓存,可以极大的提高系统的查询速度。至于insert与update则不会比更底层的JDBC来的快!

解决方案 »

  1.   

    我用以下程序进行查询,居然最快的一次也用了10秒,不知道是哪里错了??        SessionFactory sf =new  Configuration().configure().buildSessionFactory();
            Session session = sf.openSession();
            Criteria criteria = session.createCriteria(WEB_MENU.class);
            //限定查询返回检索结果中,从第一百条结果开始的20条记录
            criteria.setFirstResult(100);
            criteria.setMaxResults(20);
            List li=criteria.list();
            session.close();
            return li;
      

  2.   

    应该不会快什么,用jdbc是最快的。就算是快也是毫秒级的不算什么。主要用hibernate开发系统能提高开发效率和系统的可重用性等。
      

  3.   

    配置缓存,hibernate specification中有一章专门说性能提升的
      

  4.   

    呵,刚开始应用hibernate,不觉得呢!!
      

  5.   

    你这十秒包不包括SessionFactory初始化的时间??
      

  6.   

    任何封装在JDBC之上的东西都不可能有直接去写JDBC快(不考虑cache)。但是如果性能差别不是特别大的情况下,通过适当的封装,降低开发的复杂性,提高开发效率和使代码易于维护,才有了Hibernate, EntityBean或者iBatis这样的东西。