为了账号安全,请及时绑定邮箱和手机立即绑定

无法延迟加载 JPA 关系

无法延迟加载 JPA 关系

梦里花落0921 2022-06-23 17:31:42
我正在与 Jhipster 合作。我无法懒惰地吸引客户。我做了一个这样的JDL...... PROPERTY id ... CUSTOMER id ... CUSTOMER_PROPERTY id customer_id property_id value relationship OneToMany {    Customer to CustomerProperty                     } relationship ManyToOne {    CustomerProperty to Property     }我的域名Customer.java @OneToMany(mappedBy = "customer", fetch = FetchType.LAZY) @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) private Set<CustomerProperty> customerProperties = new HashSet<>();Property.java 没有映射CustomerProperty.java @ManyToOne private Property property; @ManyToOne @JsonIgnoreProperties("customerProperties") private Customer customer;我已经尝试显式设置 fetch = FetchType.LAZY 但它不断将完整的 Customer 对象与所有 CustomerProperties List我想了解为什么 fetch 不起作用
查看完整描述

1 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

如果一个集合是否被延迟加载,调试不是一个好的评估机制。调试器本身可能会触发初始化。

而不是使用调试器使用

org.hibernate.Hibernate.isInitialized(yourCollection)

在加载实体后验证它是否已初始化。

如果此方法返回 false 但您仍然怀疑稍后会初始化集合,您应该在可能的后续调用(其他地方)中搜索错误。


查看完整回答
反对 回复 2022-06-23
  • 1 回答
  • 0 关注
  • 66 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信