浏览 3214 次
锁定老帖子 主题:有个关于domain model的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-10-01
现有3个实体A,B,C A{ Aid Aname B集合 } B{ Bid Bname C集合 } C{ Cid Cname C一些相关属性 } 在Hibernate当中肯定要设one to many关联查询, 但是如果我有某个页面只是想得到A的当中的name和id就可以了,但每次通过hibernate查询都会相应的把B和C的集合都包含进来(数据少的话那倒是不要紧,但如果多的话那就要命了)。 请问如果遇到这种情况该怎么设置呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-10-01
lazy load
|
|
返回顶楼 | |
发表时间:2006-10-01
如果设置了lazy load也就是只有想调用的时候才会读取,但是使用了它以后会增加数据库的连接的次数,导致最终数据库成本增高。
比如在我的应用当中大部分是需要这种关联查询的,只有个别不需要,那这种设置就是不可取的。 有没有更好的方法动态的使底层查询根据需要采用不同的策略呢? |
|
返回顶楼 | |
发表时间:2006-10-02
fetch
|
|
返回顶楼 | |
发表时间:2006-10-02
自己写HQL吧
|
|
返回顶楼 | |
发表时间:2006-10-02
gamex 写道 如果设置了lazy load也就是只有想调用的时候才会读取,但是使用了它以后会增加数据库的连接的次数,导致最终数据库成本增高。
比如在我的应用当中大部分是需要这种关联查询的,只有个别不需要,那这种设置就是不可取的。 有没有更好的方法动态的使底层查询根据需要采用不同的策略呢? 用lazy load 怎么会增加数据库连接次数呢? |
|
返回顶楼 | |
发表时间:2006-10-02
gamex 写道 如果设置了lazy load也就是只有想调用的时候才会读取,但是使用了它以后会增加数据库的连接的次数,导致最终数据库成本增高。
比如在我的应用当中大部分是需要这种关联查询的,只有个别不需要,那这种设置就是不可取的。 有没有更好的方法动态的使底层查询根据需要采用不同的策略呢? 打开show_sql,看看hibernate的sql语句,想想自己用jdbc会怎么实现,就应该没问题了 |
|
返回顶楼 | |