`

HQL语句 实例化对象查询数据

 
阅读更多

HQL: 连接查询

select

      new com.entity.order.CJTAfterSalesOrder(ts,gt.tid,gt.postDate) From CJTOutGoingTask AS gt,TSalesOrder AS ts    where gt.orderId=ts.salesOrderId

 

其中: TSalesOrder  字段  orderId,b,c   CJTOutGoingTask 字段salesOrderId,tid,postDate

将查询出来的TSalesOrder 对象和CJTOutGoingTask 对象中的部分属性组成一个新的对象CJTAfterSalesOrder  

这里需要创建对象类CJTAfterSalesOrder   并且添加构造函数、get/set方法。如下:

 

public CJTAfterSalesOrder(TSalesOrder salesOrder, String tid,

Date afterSalepostDate) {

super();

this.salesOrder = salesOrder;

this.tid = tid;

this.afterSalepostDate = afterSalepostDate;

}

/**

*/

public CJTAfterSalesOrder() {

super();

}

private TSalesOrder salesOrder;

private Long id;

private Long orderId;

private String tid;

private String afterSalememo;

private Integer status;

private Date afterSalepostDate;

private Date afterSalemodiDate;

private Integer count;

private String type;

public TSalesOrder getSalesOrder() {

return salesOrder;

}

public void setSalesOrder(TSalesOrder salesOrder) {

this.salesOrder = salesOrder;

}

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public Long getOrderId() {

return orderId;

}

public void setOrderId(Long orderId) {

this.orderId = orderId;

}

public String getTid() {

return tid;

}

public void setTid(String tid) {

this.tid = tid;

}

public String getAfterSalememo() {

return afterSalememo;

}

public void setAfterSalememo(String afterSalememo) {

this.afterSalememo = afterSalememo;

}

public Integer getStatus() {

return status;

}

public void setStatus(Integer status) {

this.status = status;

}

public Date getAfterSalepostDate() {

return afterSalepostDate;

}

public void setAfterSalepostDate(Date afterSalepostDate) {

this.afterSalepostDate = afterSalepostDate;

}

public Date getAfterSalemodiDate() {

return afterSalemodiDate;

}

public void setAfterSalemodiDate(Date afterSalemodiDate) {

this.afterSalemodiDate = afterSalemodiDate;

}

public Integer getCount() {

return count;

}

public void setCount(Integer count) {

this.count = count;

}

public String getType() {

return type;

}

public void setType(String type) {

this.type = type;

 

}

 

  最后执行查询:List list=this.getBaseHibernateService().query(hql);

获取查询的结果集。  注: 别名必须添加 AS  不能使用对象.* 即:ts.*或者gt.*  如果查询的两个对象中有相同的字段 如  createDate,modiDate  如果直接From 所有数据则会报错。 

 

 

 

分享到:
评论

相关推荐

    Hibernate HQL教程

    1.2.4 在映射文件配置HQL语句 15 1.3 HQL的嵌套子查询 15 1.3.1 嵌套子查询的概念 15 1.3.2 带有IN谓词的子查询 16 1.3.3 比较子查询 16 1.3.4 带有ANY或ALL的子查询 17 1.4 HQL的多表查询 17 1.4.1 表之间的关联...

    hibernate操作数据库笔记

    初始化Hibernate:在要使用Hibernate的类的方法中实例化Configuration对象并用Configuration对象的configure()方法将hibernate.cfg.xml中的配置加载到内存,即: Configuration config = new Configuration()....

    hibernate精华教程

    要使用HQL(HibernateQueryLanguage)查询语句,HQL查询语句是面向对象的,它引用类名及类的属性名。 select/update/delete…… from …… where …… group by …… having …… order by …… asc/desc ...

    Hibernate实战(第2版 中文高清版)

     第1章 理解对象/关系持久化   1.1 什么是持久化   1.1.1 关系数据库   1.1.2 理解SQL   1.1.3 在Java中使用SQL   1.1.4 面向对象应用程序中的持久化   1.2 范式不匹配   1.2.1 粒度问题   1.2.2 ...

    Hibernate体系结构的概要图

    Session接口 Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的...

    jdbc基础和参考

    ORM:使用元数据信息来描述对象和数据库之间的关系,并且能够自动实现java中持久化对象到关系型数据库中表的映射 脏检查:自动对缓存中的数据进行检查,并且选择在合适的时机和数据库之间进行交互,以保持数据的...

    hibernate 完整教程 自学

    SessionFactory接口  SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻...它可以使用HQL语言或SQL语句两种表达方式

    Spring面试题

    当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。 3.Hibernate中怎样实现类之间的...

    Java语言基础下载

    操纵持久化对象 698 选择继承关系的映射方式 699 映射多对一多态关联 702 内容总结 705 独立实践 705 第三十六章:HQL介绍 706 学习目标 706 HQL的出现 707 进入HQL世界 707 聚合 708 分组 709 在Java中使用HQL 709 ...

    Hibernate教程

    实例化集合和代理(Initializing collections and proxies) 20.1.5. 使用批量抓取(Using batch fetching) 20.1.6. 使用子查询抓取(Using subselect fetching) 20.1.7. 使用延迟属性抓取(Using lazy ...

    hibernate 框架详解

    15. HQL: Hibernate查询语言 15.1. 大小写敏感性问题 15.2. from子句 15.3. 关联(Association)与连接(Join) 15.4. select子句 15.5. 聚集函数 15.6. 多态查询 15.7. where子句 15.8. 表达式 15.9. order ...

    hibernate3.04中文文档.chm

    实例化集合和代理(Initializing collections and proxies) 20.1.5. 使用批量抓取(Using batch fetching) 20.1.6. 使用子查询抓取(Using subselect fetching) 20.1.7. 使用延迟属性抓取(Using lazy ...

    最全Hibernate 参考文档

    19.1.3. 实例化集合和代理(Initializing collections and proxies) 19.1.4. 使用批量抓取(Using batch fetching) 19.1.5. 使用子查询抓取(Using subselect fetching) 19.1.6. 使用延迟属性抓取(Using lazy...

    Hibernate3+中文参考文档

    19.1.3. 实例化集合和代理(Initializing collections and proxies) 19.1.4. 使用批量抓取(Using batch fetching) 19.1.5. 使用子查询抓取(Using subselect fetching) 19.1.6. 使用延迟属性抓取(Using lazy...

    基于SpringJDBC的轻量级ORM框架sborm.zip

    QueryBudiler,使得更多简单的单表查询可以通过对象组织查询、更改逻辑,避免过多去写相似性的SQL语句,减少DAO接口量。 三、一些亮点 1、Entity的设计:很多人看了也许会说,这个不是POJO,不是纯粹的Java ...

    第24次课-1 Spring与Hibernate的整合

    List find(String queryString):根据HQL查询字符串来返回实例集合 List findByNamedQuery(String queryName):根据命名查询返回实例集合 Object get(Class entityClass, Serializable id):根据主键加载特定持久化...

    Java学习笔记-个人整理的

    {7.4}基本类型数据序列化}{108}{section.7.4} {7.5}String的序列化}{109}{section.7.5} {7.6}InputStream与OutputStream}{109}{section.7.6} {7.6.1}FileInputStream}{109}{subsection.7.6.1} {7.6.2}...

    JAVA程序开发大全---上半部分

    9.2.6 使用反向工程生成持久化对象、映射文件和DAO类 143 9.2.7 使用Hibernate功能 151 9.3 MyEclipse中Hibernate框架的高级操作 152 9.3.1 在Hibernate反向工程中定制映射关系 153 9.3.2 使用HQL编辑器 154 9.4 ...

Global site tag (gtag.js) - Google Analytics