`
bailangfei3344
  • 浏览: 44298 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

hql里可以new对象..

阅读更多

 向老师请教的...  原来hql可以new对象,  老师的代码

 

String hql = " select new  com.domain.MyUser(name,passwd) from Users";     
Query query = session.createQuery(hql);    //默认查询出来的list里存放的是一个Object数组,但是在这里list里存放的不再是默认的Object数组了,而是MyUser对象了         
List<MyUser> myUsers = query.list();            
for(MyUser myUser : myUsers){                 
	String name = myUser.getUsername();      
	String passwd = myUser.getPassword();       
	System.out.println(name + " : " + passwd);       
	}  

 

 

 

 

 

0
0
分享到:
评论
2 楼 黑暗浪子 2010-01-26  
hiberniate之所以提供这样的功能,其目的就是让你可以在多表查询时候,在hql里新建你的dto对象,这样方便你在前台界面显示查询数据结果集。毕竟在很多情况下,jsp界面显示数据的各个字段不会是同一张数据库表中的字段。而且个人认为如果有N个属性,可以将属性设置为每个字段所标的model对象。比如A字段是C表的字段,B字段是D表的字段。
你可以new object(C,D).然后object.getC.getA和object.getD.getB将A,B两个字段的value取出。当然我认为少于4个属性的话,还是不要这么做。
1 楼 numen_wlm 2010-01-26  
如果那个Class有N多个属性的话,那么它的构造函数得有很多参数了。。写起来看着挺长的。

相关推荐

    Hql详解[文].pdf

    - 使用`new`关键字可创建新对象,如`String hql = "select new User(id,name)From User";`,返回`List&lt;User&gt;`列表。 - 判断查询结果是否为数组,可以使用`obj.getClass().isArray()`。 4. **分页查询** - ...

    Hibernate HQL详解.docx

    Hibernate HQL,全称为Hibernate Query Language,是Hibernate框架中用于操作数据库的一种面向对象的查询语言。它允许开发者用面向对象的方式来编写查询语句,极大地提高了开发效率和代码的可读性。以下是对HQL的...

    hql语句 使用大全

    HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. 查询所有记录(Select) ...

    hql精点查询语句.doc

    HQL是Hibernate框架提供的一种面向对象的查询语言,它允许开发人员以面向对象的方式编写数据库查询,而无需直接处理SQL语句,从而简化了数据访问逻辑。 ### 1. FROM子句 FROM子句用于指定查询的对象来源。例如,...

    HQL.pdf数据查询语句

    如果实体类如User提供了适当的构造函数,可以在HQL查询时直接创建对象并返回: ```java public class User { private Integer id; private String username; private String password; // 构造函数 public User...

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

    此外,还可以利用HQL的投影查询特性,创建一个新的对象实例: ```java List&lt;User&gt; users = session.createQuery("select new User(user.name, user.age) from User user").list(); for (User user : users) { ...

    HQL查询及语法

    - `select p.name.firstName from Person as p`: 如果`name`属性本身是一个复合对象,可以通过`.`来访问其子属性。 3. **构造复杂数据类型** - `select new list(p.name, p.address) from Person as p`: 构建一...

    HQL语法大全,并带有详细的例子

    与传统的SQL相比,HQL更加面向对象,支持诸如继承、多态等特性,这使得它在处理复杂的对象关系映射时显得更为灵活。 #### 二、HQL的基本使用流程 使用HQL进行查询主要遵循以下步骤: 1. **获取Hibernate Session...

    HQL语句大全HQL语句大全

    ### HQL语句详解 ...通过上述介绍可以看出,HQL不仅具备SQL的强大功能,同时还具有面向对象的特点,使得查询变得更加简单直观。在实际开发中,合理利用HQL可以极大地提高数据库操作的效率和代码的可读性。

    Hibernate HQL.txt

    根据提供的文件信息,我们可以深入探讨Hibernate HQL(Hibernate Query Language)的相关知识点,特别是关于其查询功能、连接操作、条件过滤以及聚合函数的应用等。 ### Hibernate HQL简介 Hibernate HQL是一种...

    HQL 语法总结 实体查询

    HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者以一种类似于SQL但更接近于面向对象的方式来编写查询。本文将详细介绍HQL中的实体查询,并提供一些实际应用场景。 ##### 示例:TUser 类 ...

    HQL查询pdf资料

    HQL还提供了一种动态构造实例的功能,可以将查询结果映射为特定的Java对象,例如: ```java List&lt;User&gt; users = session.createQuery("SELECT NEW User(user.name, user.age) FROM User user").list(); ``` 需要...

    hibernate查询之HQLhibernate查询之HQL

    HQL的强大之处在于它将SQL语句转化为面向对象的表达,使得开发人员可以更自然地使用Java对象进行数据操作。通过HQL,开发者可以避免直接处理SQL字符串,减少SQL注入的风险,并提高代码的可读性和可维护性。同时,...

    Hql多结果集

    这时可以使用`SELECT`子句与`NEW`关键字来创建一个新的对象,该对象包含了所选属性。例如: ```hql SELECT NEW 类名(属性1, 属性2, ...) FROM 实体名 ``` 执行此类查询后,返回的结果是一个`List`集合,集合中的每...

    HibernateUtil分装完整版HQL查询

    HQL是Hibernate提供的面向对象的查询语言,类似于SQL,但它是针对对象模型而非关系数据库设计的。HQL允许开发者以类和属性的名称进行查询,而不是表和列名,这使得代码更具可读性和可维护性。例如,你可以通过HQL...

    Spring中hql语句的常用方法

    除了基本的HQL查询外,`HibernateTemplate`还提供了一种基于示例对象的查询方式,这种方式非常适合于查询具有复杂属性组合的对象。 1. **findByExample(Object exampleEntity)**:此方法接受一个示例对象作为参数,...

    HQL语句的语法

    HQL(Hibernate Query Language)是Hibernate框架中用于操作对象关系映射(ORM)的SQL-like语言,它允许开发者以面向对象的方式来查询数据库。HQL语句的语法结构与SQL相似,但更注重对象和类的概念。以下将详细介绍...

    Spring中常用的hql查询方法

    在Spring框架与Hibernate技术结合使用时,HQL(Hibernate Query Language)作为对象查询语言被广泛应用于数据查询操作之中。本文将详细解析Spring框架中常用的HQL查询方法及其应用场景。 #### 一、find(String ...

    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`子句...

    Hibernate hql查询语法总结

    其内置的HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者以类和对象的方式进行数据查询。本文将对Hibernate HQL查询语法进行总结,涵盖基础查询、属性查询、实例化查询以及查询链接等多个...

Global site tag (gtag.js) - Google Analytics