为了账号安全,请及时绑定邮箱和手机立即绑定

HQL数据查询基础

难度中级
时长 1小时41分
学习人数
综合评分9.77
301人评价 查看评价
9.9 内容实用
9.8 简洁易懂
9.6 逻辑清晰
  • //返回list集合 String hql = “select new list(s.name,s.tel,s.address)from Seller s”; Query query = session.createQuery(hql); List<List> list = query.list(); for(List list:lists){ list.get(0)//name信息 list.get(1)//tel信息 list.get(2)//address的信息 } PS:习惯那种或者那种有需求就用哪种 list和object、map没什么区别
    查看全部
  • from子句中持久化类的引用: 1、不需要引入持久化类的全限定名(如from com.imooc.model.Seller),直接引入类名(from Seller)即可 2、我们知道在java环境中一定要指明全限定名,这样java环境才知道去获取这个类,而HQL语句中之所以可以省略,是因为auto-import自动引入缺省情况。hibernate框架中,在解析HQL语句时,会根据映射配置信息自动完成持久化类的导入,这样的方式更加方便,也更加符合程序员的编程习惯。 3、在from子句中全限定名的引用与直接引入类名是一样,并不会报错!
    查看全部
  • from子句是HQL语句的最简形式 from指定了HQL语句查询主体-持久化类及其属性 当编写的HQL中只有from子句,默认Hibernate框架会查询该持久化类的所有实例以及属性. from也可以实现一个与其他表有关联的表的查询.(不是多表查询,属于单表) 即A类中存在一个B类类型的变量,并且用到此B类对象,那么通过from直接获取A类的持久化对象时,同时也能获取到此A类持久化对象所包含的B类的持久化对象信息. 因为Hibernate在查询到A类持久化对象的时候后,会立刻根据外键查询此A类持久化对象所包含的B类的持久化对象信息. (如果用到此B类的持久化对象的话,Hibernate才会立刻根据外键去查询此A类持久化对象所包含的B类的持久化对象信息,如果没有用到,那么Hibernate不会根据外键去查询此B类的持久化对象信息)
    查看全部
  • 初学HQL注意的问题 1、HQL是面向对象的查询语言,其查询主体是持久化类及其属性,而SQL查询主体是数据库表与表的字段;HQL对Java【类与属性大小写敏感】,SQL语句对大小写不敏感; 2、HQL与SQL在形式上非常相似,特别是HQL在设计上尽量符合之前SQL开发人员的开发习惯,在使用上非常容易与SQL混淆,但是我们不能被表象所迷惑,要认清本质; 3、HQL对【关键字不区分大小写】,比如之前提到的几个SQL子句其中的关键字,from,where,group by,having,order by...等,只要拼写正确,大小写并不重要,但是为了代码的可读性与美观性,习惯上对HQL的所有关键字小写
    查看全部
  • 主配置文件内容
    查看全部
  • teardown美 ['terˌdoʊwn]n.拆卸 @Test public void testSelectClauseSelf(){ String hql = " select new Seller(s.name,s.tel,s.address) from Seller s "; Query query = session.createQuery(hql); List<Seller> sellers = query.list(); for(Seller seller : sellers){ System.out.println("name: "+seller.getName()); System.out.println("tel:"+seller.getTel()); System.out.println("address:"+seller.getAddress()); } }
    查看全部
  • hql中查询一个字段 返回的是List<Object>对象,查询多个字段返回的是List<Object[]>,查询所有字段返回的是List<实体类>对象,建议多使用别名来区分不同表中的相同字段 String hql="select s.name,s.tel,s.address,s.star from Seller s "; Query query=session.createQuery(hql); List<Object[]> list=query.list(); for (Object[] objects : list) { System.out.println(" name : "+objects[0]); System.out.println(" tel : "+objects[1]); System.out.println(" address : "+objects[2]); System.out.println(" star : "+objects[3]); System.out.println(""); }
    查看全部
  • select子句:用来指定查询结果中的对象和属性,并指定以何种数据类型返回 (在最前面) from子句:用来指定hql语句的查询目标,即映射配置的持久化类及其属性 where子句:逻辑表达式,用来设置查询条件,限制返回结果和范围 group by子句:分组查询语句 having子句:对分组进行限制条件设置 order by子句:用来指定查询结果中的实例对象的排序 注:From子句在HQL语句中不可或缺的组成部分,一个最简单的HQL语句形式只要有from就可以了,其他的子句都可以省略,这点与SQL语句不同
    查看全部
    0 采集 收起 来源:HQL语句形式

    2017-03-25

  • HQL定义: 1、HQL:Hibernate Query Lauguage,Hibernate查询语言; 2、HQL是面向对象的查询语言(即以面向对象的角度进行查询),它查询的主体是映射配置的持久化类及其属性,与SQL查询主体是数据库表是完全不同的,除此之外,从数据库查询方面的功能上来讲,SQL能实现的数据库查询功能,HQL几乎可以同样实现。实际上作为一个ORM对象关系映射框架,Hibernate框架会将编写好的HQL语句解析成SQL语句来完成最终的数据库查询操作。 3、HQL提供了丰富灵活的查询特性,是Hibernate官方推荐查询方式。
    查看全部
    0 采集 收起 来源:HQL定义

    2017-03-25

  • hibernate Query接口
    查看全部
    0 采集 收起 来源:Query接口简介

    2017-03-20

  • 课程总结:
    查看全部
    1 采集 收起 来源:课程总结

    2017-03-05

  • order by子句: 1.升序排序 asc(默认) 2.降序排序 desc 代码测试:多个排序条件。从左到右知行。 与SQL的不同点。sql语句需要将排序的 列名 用select选中,而HQL不用。
    查看全部
    0 采集 收起 来源:orderby子句

    2017-03-05

  • 查询单个对象: 使用uniqueResult需要在where保证只有一个返回结果 如果有多个 则会返回异常
    查看全部
    0 采集 收起 来源:查询单个对象

    2017-03-05

  • 四则运算 1.HQL语句中也可以使用 + - * / 四则运算 2.四则运算可以在where子句和select子句中使用
    查看全部
    0 采集 收起 来源:四则运算

    2017-03-05

  • 逻辑运算符 1.and(逻辑与)、or(逻辑或) 2.not(逻辑非)
    查看全部
    0 采集 收起 来源:逻辑运算

    2017-03-05

举报

0/150
提交
取消
课程须知
本课程是Hibernate进阶课程,需要小伙伴们了解Hibernate映射配置知识点,对这方面内容不了解的小伙伴们可以先去《 Hibernate初探之单表映射》进修一下~~
老师告诉你能学到什么?
1、什么是HQL,以及HQL的语句形式。 2、在Hibernate框架中如何执行HQL查询。 3、如何编写出正确的HQL查询语句,从数据库检索到我们想要的数据。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!