レイジーJPA関係を読み込むことができません

ブルーノ・ミゲル:

私は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;

私はすでにフェッチ= FetchType.LAZY明示的に設定しようとしているが、それはすべてのCustomerPropertiesリストとの完全な完全なCustomerオブジェクトをもたらし続けています

私はそれが働いていないの取得理由を理解したいと思います

Alexandarペトロフ:

コレクションは遅延ロードされたかどうデバッグ、評価のための良いメカニズムではありません。デバッガ自体が初期化をトリガすることができます。

代わりに、デバッガの使用を使用します

org.hibernate.Hibernate.isInitialized(yourCollection) 

それはあなたのエンティティのロード後に初期化されているかどうかを確認します。

このメソッドの戻り値のfalseの場合しかし、あなたは(どこかに)可能、後続の呼び出しでエラーを検索する必要があり、初期化後の時点でコレクションがあることをあなたはまだ疑わしいです。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=210903&siteId=1