HQL学习

  1. HQL:Hibernate Query Language 即Hibernate查询语言
    HQL是面向对象的查询语言,对Java类与属性大小写敏感,映射配置的持久化类及其属性
    SQL对应的是数据库表
  2. HQL语句形式
    select … from … where … group by … having … order by …
  3. Query接口:org.hibernate.Query接口、
    在该接口在中定义执行查询的方法
    支持方法链编程风格,使得程序代码更为简洁

    Query实例的创建:
         1. Session的createQuery()方法创建Query实例
         2. createQuery方法包含一个HQL语句参数,createQuery(hql)
    Query执行查询:
         1. Query接口的list()方法执行HQL查询
         2. list()方法返回结果数据类型为java.util.List,List集合中存放符合查询条件的持久化对象
     eg:
            String hql = "from Seller";
            Query query = session.createQuery(hql);
            List<Seller> sellers = query.list();
            for(Seller seller:sellers){
                 System.out.println(seller);
             } 
    
  4. from子句 +类名
    from子句为hibernate中必须项,而select为非必须项。
    from指定了HQL语句查询主体——持久化类及其属性

    from子句中持久化类的引用不需要引入持久化类的全限定名,直接引入类名

    from子句中别名的应用
    1. 为被查询的类指定别名 可以使用as关键字,也可以不使用
    2. 在HQL语句其他部分通过别名引用该类

  5. select子句
    [1] 以Object[]形式返回:select子句中未指定返回数据类型,默认为Object[]
    eg: String hql = “select s.name,s.tel,s.address from Seller s”;
    Query query = session.createQuery(hql);
    List

猜你喜欢

转载自blog.csdn.net/weixin_37706085/article/details/81629633
HQL