هل هناك مساعد لمعرفة ما إذا كان قد تم تحميل عقار بواسطة السبات؟
-
22-09-2019 - |
سؤال
أحتاج إلى مساعد لمعرفة ما إذا كان قد تم تحميل خاصية كوسيلة لتجنب LazyInitializationException
. هل هو ممكن؟
@Entity
public class Parent {
@OneToMany
private List<Child> childList;
}
@Entity
public class Child {
}
"select distinct p from Parent p left join fetch p.childList";
// Answer goes here
// I want to avoid LazyInitializationException
SomeHelper.isLoaded(p.getChildList());
المحلول
هناك طريقتان ، في الواقع.
لمعرفة ما إذا كان كسول منشأه تم تهيئته يمكنك الاحتجاج Hibernate.isPropertyInitialized()
الطريقة مع مثيل الكيان الخاص بك واسم الخاصية كمعلمات.
لمعرفة ما إذا كان كسول مجموعة (أو الكيان) تمت تهيئته (كما في مثالك) يمكنك الاحتجاج Hibernate.isInitialized()
مع المجموعة (الكيان) مثيل كمعلمة.
لا تنتمي إلى StackOverflow