`
dddquk
  • 浏览: 2910 次
文章分类
社区版块
存档分类
最新评论

HQL多表联合查询优化讨论

阅读更多
有如下实体类:Order, Ticket ,Attractions,Area
Order 里面有 ticketId,Ticket 跟 Attractions 是由关联表管理(ticketId_attraction),Area跟Attractions都有catid这个字段
如果是按照 area里面的pid来查询 怎么写HQL语句是最迅速最方便呢?

[color=red]Order[/color]
private Long userId;// 会员ID
    private Long ticketId;// 门票ID
    private Integer num;// 可用人数
    private Date addTime;// 购票时间
    private Date modifyTime;// 订单生效时间
    private Date expTime;// 过期时间
    private String linkId;// 支付流水号
    private Double money;// 支付金额
    private Integer type;// 支付方式0/1:支付宝/网银
    private Integer orderStatus;// 订单状态0/1/2 :下单/支付成功/支付失败
    private Integer ticketStatus;// 门票状态 0/1/2/3 正常/已用/过期/已退
    private Date useTime;// 门票使用时间
    private Integer flag; //删除类型 0/1   删除/未删除
    private Integer usedNum;//已使用人数
    private User user; //用户对象
——————————————————————————————————————————————————

[color=red]Ticket[/color]
	private String name;// 门票名称
	private String description;// 门票描述
	private Integer type;// 类型 0/1 普通票/通票
	private List<Attractions> attractions;// 景点
	private Double price;// 正常票价
	private Double price1;// 多人票价
	private Double price2;// 团购票价
	private Double price3;// 旅行社票价
	private Double exp;// 有效期单位:月
	private Double jf;// 消费获取积分数
	private short state = AVAILABLE_STATE;// 0/1 显示/不显示
	public final static short AVAILABLE_STATE = 0;
	public final static short DISABLE_STATE = 1;
---------------------------------------------------------------------------------------------------------
[color=red]Attractions[/color]
public class Attractions extends PkEntity {
	private String title;// 景点标题
	private String bn;// 景点名称
	private String canshu;// 详细介绍
	private String memo;// 简介
	private int catid;// 地区
	private AttractionsOpenTime brandid;// 开放时间

---------------------------------------------------------------------------------------------------------
[color=red]Area[/color]

public class Area {
    private Long catid;
    private Integer pid;
    private String cat;
    private Integer xuhao;
    private String catPath;
    private Integer nums;
    private Integer tj;
    private Integer ifChannel;

分享到:
评论

相关推荐

    Hibernate多表查询.txt

    在多表查询中,HQL支持通过逗号分隔的表名来表示联合查询,同时利用`where`子句来定义表之间的关联条件。例如,在示例代码中,通过`from tBookInfo book, BookSelection sel where book.id = sel.bookId`这样的HQL...

    hibernate学习资料

    10. **多表联合查询**:探讨如何处理多表查询,包括关联查询和子查询的实现。 这份学习笔记不仅适合初学者,也适用于有一定经验的开发者,因为它深入浅出地阐述了Hibernate的关键特性,并提供了丰富的实例来帮助...

    旅游信息系统的设计和实现java学位论文.doc

    系统通过优化HQL(Hibernate Query Language)语句,避免全表扫描和过多的多表联合查询,从而提高查询速度。同时,借助Hibernate的数据缓存机制,预先将查询结果存储在缓存中,减少后续查询的时间,进一步提升系统...

    Hibernate_ 开发员的笔记

    7. **关联映射**:讨论了一对一、一对多、多对一、多对多等各种关联映射的配置和使用,包括懒加载和即时加载策略。 8. **缓存机制**:详细讲述了第二级缓存和查询缓存的配置与应用,以及第三方缓存实现,如Ehcache...

    hibernate学习笔记

    - **多表继承映射关系**:`多表继承映射关系.PNG` 可能涵盖了Hibernate的联合继承和表-per-hierarchy策略,其中每个子类对应单独的表或共享一部分字段。 **4. 映射类型** `其他映射(set,list,string,map)-3.PNG` ...

    hibernate in action 第二版中文版

    11. **复杂查询与子查询**:包括联合查询、分组与聚合函数、子查询的使用,以及如何在HQL和Criteria API中实现。 12. **高级特性**:涵盖动态模型、事件监听器、类型转换器、CGLIB和ASM代理等高级话题。 ...

    Hibernate3.5官方开发文档pdf + html

    6. **继承映射**:单表继承、联合继承和多表继承的策略,以及@Inheritance、@DiscriminatorColumn和@DiscriminatorValue等注解的使用。 7. **懒加载与立即加载**:理解懒加载(Lazy Loading)和立即加载(Eager ...

    hibernate_3.5中文手册(带书签)

    6. ** Criteria API和HQL的比较**:讨论了两种查询方式的优缺点,帮助开发者选择合适的查询策略。 7. **第二级缓存**:详细讲解了如何配置和使用Hibernate的二级缓存,以提升应用性能,减少对数据库的访问。 8. **...

    深入浅出Hibernate.pdf

    8. 继承映射:讨论如何处理类的继承关系,如单表继承、联合继承和表格-per类的映射策略。 9. 集合映射:讲解如何映射集合类型的数据,如List、Set、Map等,以及它们在数据库中的表示方式。 10.缓存机制:介绍...

    java学习hibernate

    第7节-查询.ppt应该会深入讨论HQL,它是面向对象的查询语言,可以更直观地处理对象关系,同时也会介绍Criteria API,这是另一种查询方式,提供更灵活的构建查询的方式。 7. **过滤器和集合过滤**: 第6节-过滤器...

    Hibernate in Action

    7. **复杂映射与高级特性**:涵盖了多对一、一对多、多对多等关联关系的映射,以及集合、继承、组件、联合实体等高级特性。 8. **集成其他技术**:讨论了如何将Hibernate与其他技术如Spring、JPA等进行整合,构建更...

    Hibernate程序高手秘笈.part07-09.rar

    6. **高级查询**:可能包含对子查询、关联子查询、分组、排序和聚合函数的使用,以及多表查询的处理。 7. **程序集成**:讲解如何将Hibernate与其他Java框架(如Spring)集成,以实现更高效的企业级应用开发。 每...

    hibernate技术研究对比总结

    Hibernate 支持单表继承、联合继承和表-per-hierarchy 策略,将继承层次结构映射到数据库的不同方式。 ### 4. 关联映射 讨论了 Hibernate 如何处理一对一、一对多、多对一和多对多的关系映射,包括懒加载、级联...

    hibernate3 帮助文档CHM

    6. **性能优化**:包括二级缓存的使用、批处理操作、懒加载和立即加载的策略,以及如何通过查询优化提高性能。 7. **HQL与 Criteria 查询**:介绍了Hibernate特有的面向对象的查询语言HQL,以及Criteria API,让...

    hibernate_reference中文文档.pdf

    - **7.3.1 一对多 (one-to-many)**:讨论使用连接表的一对多关联映射。 - **7.3.2 多对一 (many-to-one)**:介绍使用连接表的多对一关联映射。 - **7.3.3 一对一 (One-to-one)**:说明使用连接表的一对一关联映射...

    Hibernate参考文档

    5. **查询语言(HQL)与 Criteria 查询**:介绍Hibernate特有的面向对象的查询语言HQL,以及Criteria API,用于执行复杂的数据库查询。 6. ** Criteria API**:提供了一种类型安全的方式来构建动态查询,无需手动...

    Hibernate实战第2版.zip

    8. Advanced Topics:深入探讨高级主题,如懒加载(Lazy Loading)、集合的优化、批量操作、级联操作、子查询、联合查询、多态性处理、JPA(Java Persistence API)对比和整合等。 9. 性能优化:讲解如何通过调整...

    hibernate in action 中文版书籍

    9. **高级特性**:涵盖动态模型、多态性、集合元素类型、子查询、联合实体、继承策略等进阶主题,提升开发者对Hibernate的深入理解和运用能力。 10. **最佳实践与实战经验**:分享作者在实际项目中积累的Hibernate...

    Hibernate面试题专栏 - 最全的Hibernate面试题, Hibernate笔试题, Hibernate问题

    【标题】与【描述】提及的是“Hibernate面试题专栏”,主要涵盖了全面的Hibernate面试题、笔试题以及相关问题,这表明我们将要讨论的是Java领域中著名的对象关系映射框架——Hibernate的相关知识。Hibernate是一个...

Global site tag (gtag.js) - Google Analytics