String hql = " select new com.domain.MyUser(name,passwd) from Users";
Query query = session.createQuery(hql); //默认查询出来的list里存放的是一个Object数组,但是在这里list里存放的不再是默认的Object数组了,而是MyUser对象了
List myUsers = query.list();
for(MyUser myUser : myUsers){
String name = myUser.getUsername();
String passwd = myUser.getPassword();
System.out.println(name + " : " + passwd);
}
// 如果是多个实体,需写上对应的别名
public CommissionArDetailQueryResult findCommDetailHeadInfo(SettleModel docHead,SettleARModel arItem){
String hql=
"select distinct new com.coscon.cbs.domain.model.test.CommissionArDetailQueryResult"
+"( commBl.billReferenceCode,commBl.companyCode,bizInfo.cargoTradeLaneCode,bizInfo.porUuid,shmtCntr.outBoundDoorCyIndicator "
+",shmtCntr.inboundDoorCyIndicator,bizInfo.fndUuid,bizInfo.firstLoadingSvvdId,bizInfo.firstPodCode,bizInfo.firstBaseLoadingSvvdId "
+",bizInfo.firstBasePolCode,bizInfo.lastBaseLoadingSvvdId,bizInfo.lastBasePodCode,bizInfo.lastLoadingSvvdId,bizInfo.lastPodCode ) "
+
" from "
+" com.coscon.cbs.domain.model.test.SettleModel docHead, "
+" com.coscon.cbs.domain.model.test.CbsSettlementBusinessInformation bizInfo ,"
+" com.coscon.cbs.domain.model.test.CbsCommissionBill commBl ,"
+" com.coscon.cbs.domain.model.test.SettleARModel arItem,"
+" com.coscon.cbs.domain.model.test.CbsCommissionContainer commCntr,"
+" com.coscon.cbs.domain.model.test.CbsShipmentContainerPackageInformation shmtCntr "
+
" where "
+ " bizInfo.businessReferenceUuid = "+docHead.getBizRefUuid()
+ " and commBl.billBasicUuid= "+docHead.getBizRefUuid()
+ " and commBl.companyCode = "+docHead.getCompanyCde()
+ " and commBl.commissionMode = "+arItem.getChrgCdeGrp()
+ " and commBl.commissionType = "+arItem.getChrgCde()
+ " and commBl.companyCode = commCntr.companyCode "
+ " and commBl.commissionMode = commCntr.commissionMode "
+ " and commBl.agencyCode = commCntr.agencyCode "
+ " and commBl.billBasicUuid = commCntr.billBasicUuid "
+ " and shmtCntr.shipmentContainerPackageUuid = commCntr.shipmentContainerPackageUuid " ;
CommissionArDetailQueryResult queryResult = (CommissionArDetailQueryResult) cbsModuleRepository.getSessionFactory().getCurrentSession().createQuery(hql).list().get(0);
return queryResult;
}
String sql = "select test1,test2 from Test1 test1,Test2 test2";
List list = session.find(sql);
for(int i=0;i<list.size();i++)
{
Object[] obj = (Object[])list.get(i);
Test1 t1 = (Test1)obj[0];
Test2 t2 = (Test2)obj[1];
}
相关推荐
Hibernate HQL,全称为Hibernate Query Language,是Hibernate框架中用于操作数据库的一种面向对象的查询语言。它允许开发者用面向对象的方式来编写查询语句,极大地提高了开发效率和代码的可读性。以下是对HQL的...
其内置的HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者以类和对象的方式进行数据查询。本文将对Hibernate HQL查询语法进行总结,涵盖基础查询、属性查询、实例化查询以及查询链接等多个...
根据提供的文件信息,我们可以深入探讨Hibernate HQL(Hibernate Query Language)的相关知识点,特别是关于其查询功能、连接操作、条件过滤以及聚合函数的应用等。 ### Hibernate HQL简介 Hibernate HQL是一种...
- 使用`new`关键字可创建新对象,如`String hql = "select new User(id,name)From User";`,返回`List<User>`列表。 - 判断查询结果是否为数组,可以使用`obj.getClass().isArray()`。 4. **分页查询** - ...
**Hibernate HQL(Hibernate Query Language)** 是Hibernate提供的一个面向对象的查询语言,类似于SQL,但它是针对对象模型设计的。HQL允许开发者使用类和属性的名字而不是表和列名进行查询,从而降低了对底层...
- **定义**: HQL(Hibernate Query Language)是一种面向对象的查询语言,它的语法类似于SQL,但不同于直接操作数据库表,HQL操作的是持久化的Java对象。这意味着在编写查询时,可以使用Java对象模型中的类名和属性...
《Hibernate 4.3.9.Final:持久化...通过深入理解Hibernate 4.3.9.Final,开发者可以更高效地管理数据库操作,提升应用性能,同时减少对SQL的依赖,专注于业务逻辑。掌握好Hibernate,无疑是Java开发者的必备技能之一。
HQL(Hibernate Query Language)是Hibernate提供的一个SQL的面向对象的查询语言,它使得开发者可以避免直接编写SQL语句,从而更好地进行数据库操作。本文将深入探讨“hibernate hql where语句拼接工具类”,并结合...
Hibernate 是一款开源的对象关系映射(Object-Relational Mapping,简称 ORM)框架,它为 Java 应用程序提供了对数据库存储的高效管理和访问能力。Hibernate 5.0.7.Final 版本作为 Hibernate 5.0 系列中的一个稳定版...
- **Query**:`Query`接口用于执行HQL(Hibernate Query Language)或SQL查询,提供对数据库数据的检索。 5. **日志配置** - 日志配置文件`log4j.properties`可以帮助跟踪SQL执行。在开发阶段,可以通过开启`...
Hibernate支持HQL(面向对象的查询语言)、Criteria API以及原生SQL查询。HQL类似于SQL,但以对象为导向;Criteria API则是类型安全且更动态的查询方式。 8. 第三方集成: Hibernate可以很好地与Spring框架集成,...
- 可以使用`new`关键字创建查询结果的新对象实例,进行构造查询。 3. **HQL查询类型** - **选择查询**:从一个或多个实体类中检索对象。 - **聚合查询**:使用函数如COUNT、AVG、MAX、MIN、SUM进行统计计算。 -...
【描述】:在ORM框架Hibernate中,数据查询和检索是一个核心功能,它提供了多种查询方式,包括标准化对象查询(Criteria Query)、Hibernate查询语言(HQL)和原生SQL查询。其中,HQL作为官方推荐的查询方式,具有...
Hibernate是Java世界中解决数据库操作问题的重要工具,它通过提供一种抽象层,使得开发人员可以使用面向对象的方式来处理数据库交互,从而减少了SQL的直接使用。 一、Hibernate概述 Hibernate是一个开源的Java库,...
通过Hibernate,开发人员可以轻松地在面向对象的Java模型与关系型数据库之间建立映射,从而简化了数据持久化的操作。 ### Hibernate 3.2新特性及改进 #### 版本信息 - **版本号**:3.2 - **发布日期**:虽然具体...
而Hibernate Annotations则是Hibernate框架的重要组成部分,它使得我们可以在实体类上直接使用注解进行对象关系映射,避免了XML配置文件的繁琐。本文将深入探讨Hibernate 3.3.2和Hibernate Annotations 3.4.0的核心...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. 查询所有记录(Select) ...
在Hibernate框架中,HQL(Hibernate Query Language)是用于操作对象关系映射的查询语言,类似于SQL,但它是面向对象的。本篇文章将详细介绍在Hibernate中进行投影查询的三种主要方式:直接查询、查询返回对象以及...
### Hibernate HQL 教程知识点总结 #### 1.1 HQL基础 ##### 1.1.1 默认数据库表和数据 - **介绍**: 本文档以`joblog`数据库为例,该数据库包含三个表:`student`(学生表)、`course`(课程表)和`sc`(选课表)。 - **...