我正在与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 = fetchype.lazy,但它不断将完整的客户对象带入所有客户范围列表
我想了解为什么获取它不起作用
调试不是评估集合是否懒惰的好机制。调试器本身可能触发初始化。
而不是使用调试器使用
org.hibernate.Hibernate.isInitialized(yourCollection)
验证实体加载后是否已初始化它。
如果此方法返回false,但您仍然怀疑稍后收集的初始化,您应该在可能的后续调用中搜索错误(其他地方)。