zoukankan      html  css  js  c++  java
  • Hibernate框架之HQL查询与Criteria 查询的区别

    Hibernate框架提供了HQL查询和Criteria 查询。下面对这两种查询分别做个例子。也好对这两种查询方法有个大概的了解。就用房屋信息表做例子,查询所有房屋信息。

    HQL语句查询所有房屋信息:

    /*
     * 查询所有房屋
     * 
     * (non-Javadoc)
     * @see Dao.HouseDao#selecthouse()
     */
        public List<House> selecthouse() {
            // TODO Auto-generated method stub
                       //获取连接
             Session session = HibernateUtil.getSession();
                          //查询房屋实体类
            String hql="from House";
            Query q=cr=session.createQuery(hql);
             
              List list = cr.list();
    
              return list;
          
        }

    Criteria 语句查询所有房屋信息:

    /*
     * 查询所有房屋
     * 
     * (non-Javadoc)
     * @see Dao.HouseDao#selecthouse()
     */
        public List<House> selecthouse() {
            // TODO Auto-generated method stub
             Session session = HibernateUtil.getSession();
             //创建Criteria对象
             Criteria cr=session.createCriteria(House.class);
                             List list = cr.list();
    
              return list;
          
        }

    通过两者的比较,我们可以看出:

    1、HQL语句必须写相应的HQL查询语句,而Criteria 语句直接把实体类对象放入类中,省略了查询语句。

    2、HQL查询,必须具备一定的SQL基础。而Criteria查询不需要任何SQL基础。

    3、HQL查询比Criteria查询用的范围更广,建议使用HQL查询。但也要对Criteria查询有所了解。

    您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态。 
    
    如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦   
    
    如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: 2276292708@qq.com
    
    如果需要转载,请注明出处,谢谢!!
  • 相关阅读:
    深入MySQL(一):MySQL的组织架构
    使用graalvm nativeimage 快速暴露jar 代码为native 共享库
    SQL注入__布尔盲注和时间盲注 菜鸟
    linux网络配置,无法解析或者打开软件包列表
    django入门视图
    三.面试题
    select,poll,epoll的区别以及使用方法
    Linux从入门到入坑
    品味Spring Cache设计之美
    JAVA_基础篇(1)_JDK 8 的下载、安装与配置
  • 原文地址:https://www.cnblogs.com/wlx520/p/4708859.html
Copyright © 2011-2022 走看看