一个关于hibernate fetch的问题 10

classone{privateStringname;privateList<two>er;}classtwo{privateStringname;privateList... class one{
private String name;
private List<two> er;
}
class two{
private String name;
private List<three> san;
}
class three{
private String name;
}
我想问一下,在hibernate中如果我fetch one类里的er属性的话是不是连two里的san属性也会一起fetch,也就是fetch是不是级联的,谢谢了
展开
 我来答
bd9006
2012-12-29 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
对于使用,是这样的。不需要你关心如何取的。
追问
再问一个小问题哈,就是当一个对象成为一个持久化对象时,如果它有一个属性也是个对象,它会不会也成为持久化对象啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-01-09
展开全部
要看你的hbm文件里面看是由关联属性上的lazy和fetch属性来决定的,根据不同的组合和你采用的get方法或者是hql直接查一共有24种不同的情况,每种情况产生的sql的时机和内容都是不一样的,讲起来比较复杂
如果关于fetch的层次,还有一个max_fetch_depth参数可以限制你所说的级联fetch的层次,一般都设置为1~5,fetch的size很决定性能,因为要连接多张表,这也是hibernate被很多人诟病的原因
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式