2
我想獲得帶有惰性獲取類型的註釋的屬性列表。我可以通過反思做到這一點,並在手邊閱讀。不過,我想知道是否有任何其他方式從ClassMetaData
或Persiter
之前獲得懶惰屬性列表? getPropertyLaziness
沒有返回正確的結果,getLazyProperties也是如此?如何獲取使用fetch = FetchType註釋的屬性名稱?
我想獲得帶有惰性獲取類型的註釋的屬性列表。我可以通過反思做到這一點,並在手邊閱讀。不過,我想知道是否有任何其他方式從ClassMetaData
或Persiter
之前獲得懶惰屬性列表? getPropertyLaziness
沒有返回正確的結果,getLazyProperties也是如此?如何獲取使用fetch = FetchType註釋的屬性名稱?
getPropertyLaziness
方法ClassMetadata
應該返回正確的值。
您是否嘗試過這樣的事情:
ClassMetadata meta = sessionFactory.getClassMetadata(entity.getClass());
String[] propertyNames = meta.getPropertyNames();
boolean[] propertyLaziness = meta.getPropertyLaziness();
for (int i = 0; i < propertyNames.length; i++) {
String propertyName = propertyNames[i];
// Check if the property fetch type is Lazy
if (propertyLaziness[i]) {
System.out.println("Property : " + propertyName + " fetch type is Lazy");
}
}
我這樣做,只是,但我不能看到propertyLaziness爲真。我可以看到,在collectionMetaData中他們很懶。但是,從CollectionMetaData中,我無法獲得OneToOne惰性,因爲它們不是集合 –