如何通过HQL延迟加载一对一合成

如何通过HQL延迟加载一对一合成,第1张

如何通过HQL延迟加载一对一合成

我已经解决了这个问题。

我所做的就是创建将字段EntityA#propertyB转换为名称为EntityA#propertyBs的Set的方法。但是我保留了EntityA#getPropertyB()和EntityA#setPropertyB(EntityB
propertyB)访问器方法。

这些访问器方法的方法主体现在如下所示:

public EntityB getPropertyB() {    return CollectionUtils.get(propertyBs, 0);}public void setPropertyBs(EntityB propertyB) {    propertyBs= Collections.singleton(propertyB);}

然后在我的映射中,我映射了集合EntityA#propertyBs并指定对“字段”的访问。

<set name="scheduledAdInfos" lazy="true" fetch="subselect" access="field" cascade="none" inverse="true">    <key column="pk_a"/>    <one-to-many /></set>

使用此设置,您现在可以创建从拥有的POJO(EntityA)到拥有的POJO(EntityB)的惰性映射,即使TABLE_B由TABLE_B拥有也是如此。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4946964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存