Hibernate的性能
采集日期:2008-5-2作者:zgqtxwd(注:本数据由系统自动采集,内容与BHCODE无关)
本文是在Java视线论坛中的一个讨论,我直接贴过来的。 xiecc: 我们的项目从去年12月份启动,采用了Struts+Hibernate的架构,一开始使用Hibernate的时候速度极快,对象操作异常方便,大家都说爽歪歪。 可惜好景不长,随着我们对象关系的不断复杂,数据量的不断增加,Hibernate的性能急剧下降。具体表现为:我们在设计对象时采用了很多的one-to-many和many-to-one的关系,在取某个对象的几个简单的属性时,它会把所有关联的子对象都取出来,经常出在取一个简单属性的时候,调试窗口的SQL语句一屏一屏地往下闪。到最后我的一个test跑完需要12分钟。 在忍无可忍之下,我们开始性能优化方案,以下我们优化所做的一些事情: 1、将所以one-to-many的关系里将lazy设成true 2、修改Hibernate.properties,增加了以下两句: Hibernate.jdbc.fetch_size=50 Hibernate.jdbc.batch_size=100 3、调整WebLogic的pool 4、利用Hibernat