社区
Java EE
帖子详情
Hibernate的优化查询问题
os586
2007-06-13 09:51:05
我有这样的一个问题,希望大家能够给予解答:
目前有三个表A,B,C。
其中A,关联着B,C表。
A对B,对C都是一对多的关联。
现在要做一个查询:通过A,去寻找B和C得到一个想要的结果。
比如说A是图形,B是正方形,C是圆。
现在想通过查询A得到对象B或者是C。但是正常情况下hibernate是要关联这两个表B,C,扫描的记录较多。
因此,大家是怎样查询的?hibernate是怎样优化处理?
...全文
219
3
打赏
收藏
Hibernate的优化查询问题
我有这样的一个问题,希望大家能够给予解答: 目前有三个表A,B,C。 其中A,关联着B,C表。 A对B,对C都是一对多的关联。 现在要做一个查询:通过A,去寻找B和C得到一个想要的结果。 比如说A是图形,B是正方形,C是圆。 现在想通过查询A得到对象B或者是C。但是正常情况下hibernate是要关联这两个表B,C,扫描的记录较多。 因此,大家是怎样查询的?hibernate是怎样优化处理?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kgxiang
2007-06-14
打赏
举报
回复
在查询A的时候,对B跟C加上fetchmode为join
os586
2007-06-14
打赏
举报
回复
关键现在是这个样子:
现在是四层关联。
A分BC,B下关联D,C下关联E,D下关联F
天呢,有时候生成的SQL语句巨多啊,这种联合查询大家是怎么想的?
tcmis
2007-06-14
打赏
举报
回复
如果你只是查询数据,不结合Struts去显示b,c表里面的数据,那么你在查询的时候可以设置B,C两个表延迟加载,那样速度会快些,因为那样就只查A表了。
或你也可以家索引。速度可以提高很多。
Hibernate
实战第二版
针对
Hibernate
4,感谢无私的奉献者,不要积分。 《图灵程序设计丛书·
Hibernate
实战(第2版)》是毋庸置疑的
Hibernate
和ORM(对象/关系映射)权威著作,由包括
Hibernate
之父在内的两位核心开发人员亲自执笔,详细讲述了
Hibernate
3.2、Java Persistence和EJB 3.0标准。《图灵程序设计丛书·
Hibernate
实战(第2版)》通过一个应用将数百个例子融合起来,不仅深入剖析了
Hibernate
3.2和Java Persistence丰富的编程模型。还深刻阐述了数据库设计、ORM和
优化
等方面的基本原则、策略和最佳实践。书中处处闪烁着作者超凡的真知灼见,将大大升华读者对ORM乃至企业级应用开发的理解。
Mango_BBS社区
J2EE的论坛web网站用到了三大框架spring+struts+JPA(
hibernate
)扫描注解和数据库用的是mySql数据库,使用ehcache做了缓存
优化
,起初有设计 有论坛、个 人空间、投票、商城、android客户端的,现在因为要找工作了,暂时把这个项目先放一放吧,实现的有论坛、和简单的商城,网上支付暂没加入
Hibernate
查询
性能
优化
技巧
数据库
查询
性能的提升也是涉及到开发中的各个阶段,在开发中选用正确的
查询
方法无疑是最基础也最简单的。 SQL语句的
优化
使用正确的SQL语句可以在很大程度上提高系统的
查询
性能。获得同样数据而采用不同方式的SQL语句在性能上的差距可能是十分巨大的。 由于
Hibernate
是对JDBC的封装,SQL语句的产生都是动态由
Hibernate
自动完成的。Hib
Hibernate
优化
查询
性能手段
Hibernate
主要从以下几方面来
优化
查询
性能:1.降低访问数据库的频率,减少select语句的数目。实现手段包括:(1) 使用迫切左外连接或迫切内连接检索策略。(2) 对延迟检索或立即检索策略设置批量检索数目。(3) 使用
查询
缓存。2.避免多余加载程序不需要访问的数据。实现手段包括:(1) 使用延迟检索策略(2) 使用集合过滤。3.避免报表
查询
数据占用缓存。实现手段为利用投影
查询
功能,
查询
出实
Hibernate
的
查询
和抓取策略
本文介绍了
Hibernate
的多种
查询
方式,包括OID
查询
、对象导航检索、HQL检索、QBC检索和SQL检索。我们还讲解了
Hibernate
的抓取策略、延迟加载以及批量抓取等相关概念。通过合理选择
查询
方式和抓取策略,我们可以
优化
Hibernate
应用程序的性能。使用
Hibernate
可以将关系型数据库和Java应用程序结合起来,提高开发效率和程序性能。本文详细介绍了
Hibernate
的多种
查询
方式,包括OID
查询
、对象导航检索、HQL检索、QBC检索和SQL检索。
Java EE
67,513
社区成员
225,879
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章