hibernate fetch="join"

多对一属性,设置fetch='join'时.

1.hql查询时,要根据lazy是否等于true来,确定fetch='join'是否生效。如果lazy=true,这不会生效(和没有设置fetch='join'一样),需要你在hql语句中明确写明left join fetch 这个属性。如果lazy=false,则会生成再生成一个select语句单独查询把(和fetch=join的语意不符),查询的结果放到这个实体属性中。

2.如果是session方法(如get()会hibernate.initiaiztion())读取这个实体(entity1)时,都会生成对应的关联查询sql语句,把这个实体属性(property1)关联的表的信息一起查出来,存放到实体属性中。

3.并且其他实体(entity2)把本实体(entity1)作为他的属性时,初始化entity2实体的entity1属性时其property1也会一并加载。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值