`
LaxLee
  • 浏览: 4595 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

如何让HQL的select子句返回你想要的类型

阅读更多
通过这几天对hql的学习 发现个有趣的事情  返回select子句 想要的类型

首先顶一个实体类
public class Person{
        private Integer id;
        private String  name;
        private String  password;


   //关键是构造方法   你想返回什么样的东东,就定义什么样的东西。
   public Person(){
         //默认的
     }
  public Person(Integer id,String name){
        //只要id 和 name的
         this.id = id;
         this.name = name;
    }
     //get  and   set .....
}

//然后就是写查询hql语句了

//如果你只想要id和name  那么就这样写

select  new Person(p.id , p.name)  from Person p; 
//然后接收就可以用List<Person> 了。

猛一看很是鸡肋,但是在我用在group by里时  就用到了  要不然 hibernate默认是给你返回Object[] 数组的。当然你也可以把它一List的方式返回
select  new List(p.id , p.name)  from Person p;  //就可以了

详细请看《hibernate_reference.pdf》我这几天 就看它又仔细的学习了hql查询。。。
分享到:
评论

相关推荐

    hql语句大全hql语句大全

    在Java环境中,HQL的SELECT子句类似于SQL中的SELECT,但更侧重于面向对象的特性。例如: ```sql SELECT new org.hibernate.eg.FOO(foo.bar, foo.BARSET) FROM org.hibernate.eg.Foo AS foo ``` 这里,`SELECT`子句...

    学习HQL语句

    from 子句返回指定的类的所有实例,而 select 子句可以选择对象的某些属性。 例如,from Order 将返回 Order 类的所有实例,而 select product from Order as o inner join o.products as product 将返回 Order 中...

    Hibernate之HQL查询

    HQL的SELECT子句** 在HQL中,SELECT不仅可以选择对象,还可以选择对象的属性,甚至可以进行复杂的计算或函数调用。比如: ```sql SELECT s.name, AVG(s.age) FROM Student s GROUP BY s.name ``` 这个查询会按...

    HQL语句大全HQL语句大全

    select子句 - `select`子句用于指定查询结果中包含的字段或属性。 - **示例**:`select p.name from Person as p` - 该语句表示只查询`Person`表中的名字属性。 ##### 3. 聚合函数 - HQL支持SQL中的聚合函数,如...

    HQL语句详解Select/update/deletefromwhere...

    ### HQL语句详解:Select/update/delete from where... 在探讨HQL(Hibernate Query Language)时,我们首先要了解它是一种用于Hibernate框架中的查询语言,其语法结构与标准SQL查询语言非常相似,但又针对对象关系...

    Hibernate查询语言HQL.PPT

    * where 子句:允许你将返回的对象的实例列表的范围缩小。 HQL 的应用示例: * 使用 HQL 检索对象:User user = (User) session.createQuery("from User where id = :id").setParameter("id", userID)....

    超级详细的hql查询语句教程

    此查询将返回所有`GraduateStudent`类型的对象。 ##### 3.2 限制每次查询的返回对象数 使用LIMIT子句可以限制返回的结果数量: ```hql SELECT s FROM Student s ORDER BY s.sage DESC LIMIT 10 ``` 此查询将返回...

    全面解析HQL语句 非常详细直接的HQL语句的功能介绍

    select子句 `select`子句用于指定返回结果集的字段或属性。HQL支持多种选择方式,包括: - `select p.name from Person as p`:选择`Person`实体的`name`属性。 - `select new list(p.name, p.address) from ...

    HQL 查询语言基础 二

    在HQL查询语言中,`FROM`子句用于指定查询数据来源的实体或表。例如: ```hql FROM Person as p ``` 这里的`Person`表示的是一个持久化类,即ORM映射中的实体类。`as p`则定义了一个别名`p`,方便后续在查询语句中...

    HQL查询语言基础.

    SELECT子句定义了查询返回的对象或对象属性。以下是一些示例: - `select employee from Employee as employee` - 返回Employee类的所有实例。 - `select employee from Employee as employee where employee.Name ...

    Hql详解[文].pdf

    - **指定列查询**:可以指定要查询的属性,如`String hql="select id,name From User as user";` - **返回单个值**:当查询结果只有一列时,可用`uniqueResult()`获取单个值。 - **集合元素类型**:查询多列返回...

    Hibernate-HQL.rar_HQL_hibernate hql

    1. SELECT子句:HQL支持多种选择项,包括属性、方法、计算表达式等,如“SELECT u.name FROM User u”。 2. FROM子句:指定查询的实体类,如“FROM User”。 3. WHERE子句:设置查询条件,支持逻辑运算符(AND、OR...

    HQL查询语言基础

    `from`子句是HQL的基础,用于指定要查询的实体或实体的别名。例如: - **单表查询**: ```hql from eg.cat as cat ``` 这里`cat`是`eg.cat`实体的别名,便于后续查询时使用。 - **多表查询**: ```hql from ...

    HQL查询pdf资料

    HQL查询的基本结构包括关键字如`SELECT`、`FROM`、`WHERE`、`GROUP BY`、`HAVING`、`ORDER BY`等,这些关键字的使用与SQL非常相似,但是HQL还支持面向对象的特性,如属性路径表达式。 ##### 实体的更新与删除 在...

    hql查询语句

    此外,`select`子句则定义了查询返回的结果,可以是对象的属性、构造器创建的新对象,甚至是集合或映射。例如,`select p.name from Person as p`将返回所有Person对象的name属性。 统计函数在HQL中扮演着重要角色...

    Hql多结果集

    HQL多结果集是指在一个查询语句中返回多个结果集,这些结果集可以是单个实体、实体集合或者是实体的属性组合等。这种方式非常适用于需要同时获取多种类型数据的场景。 #### 三、HQL多结果集的使用方法 ##### 1. ...

    精通HQL.doc

    例如,如果你想找到所有选修了某课程的学生,可以写成 `from Student s join s.courses c where c.cname='数学'`。 6. **聚合函数**:可以使用COUNT、AVG、MAX、MIN和SUM等聚合函数,如 `select count(s.id) from ...

    hibernate 中HQL语句查询学习笔记

    ### Hibernate中HQL语句查询学习笔记 #### HQL基础 **HQL**(Hibernate Query Language)是Hibernate框架推荐使用的查询语言,它提供了一种面向对象的方式来查询数据库,支持多种复杂的查询操作,如继承、多态及...

    HQL语句的用法

    此外,`select`子句可以用于指定返回的属性,例如`select product.name from Order as o inner join o.products as product`将返回Order中的每个Product对象的名称。 ### 约束(Constraint) 约束是过滤数据的关键...

    常用的hql语句用法解析

    `select`子句用于定义查询返回的内容。你可以选择返回整个对象,或者只返回对象的部分属性。例如,`select c.name from Cat as c`将返回所有猫的名字。复杂的查询可以选择多个对象或属性,或者使用聚合函数,如`...

Global site tag (gtag.js) - Google Analytics