我在java中使用hibernate。我通過運行諸如from MyObject where field='name'
的查詢來獲取對象列表。這成功運行,當我做list.size()時,它也返回1.但是當我做list.get(0)
我得到一個所有字段爲空的對象。在調試時,當我將鼠標懸停在對象上時,它顯示如下:com.xyz.data.MyObect_$$_javasassit_11
。這是什麼意思?
1
A
回答
0
它是由Hibernate爲您創建的代理類。這允許休眠(除其他外)緩存數據和延遲加載實例變量數據等。
1
這是Hibernate如何實現lazy loading的副作用。 com.xyz.data.MyObect_$$_javasassit_11
是由Hibernate創建的子類,它重寫了所有首先確保實體已加載的方法,然後將調用tp轉發給實際實例。
通常這是透明的,但在某些情況下它可能很重要。其中最常見的是令人生畏的LazyInitializationException。如果您的調試器支持監視表達式,則可以使用訪問器方法獲取字段的實際值(而不是查看字段x
爲myobject.getX()
創建表達式)。
相關問題
- 1. 結腸在Java中意味着什麼?
- 2. '...'在java中意味着什麼?
- 3. 「SomeClass.this」在java中意味着什麼?
- 4. tmp_xxx在java中意味着什麼?
- 5. @符號在java中意味着什麼?
- 6. 「| =」在Java中意味着什麼?
- 7. 「x =(something)」在java中意味着什麼?
- 8. 「this.x」在java中意味着什麼?
- 9. Java中的空間意味着什麼?
- 10. 在AngularJS中結尾意味着什麼double意味着
- 11. 什麼%*%意味着R中
- 12. 什麼呢##意味着在$ {}
- 13. 什麼===在PHP意味着
- 14. 什麼。意味着在PHP?
- 15. 分配時&& do /意味着什麼? JAVA
- 16. 這些Java錯誤意味着什麼?
- 17. 這個java泛型意味着什麼?
- 18. 〜=是什麼。在Stata意味着什麼?
- 19. StackOverflowError在Java中意味着什麼?它的修復是什麼?
- 20. void **意味着什麼
- 21. PREEMPTIVE_XE_DISPATCHER這意味着什麼?
- 22. Field.Index.NOT_ANALYZED_NO_NORMS意味着什麼
- 23. HttpServletResponse.SC_BAD_REQUEST意味着什麼?
- 24. Solr意味着什麼?
- 25. 溢出意味着什麼?
- 26. * | *這意味着什麼CSS?
- 27. 什麼<?意味着
- 28. %是什麼〜DP0意味着
- 29. 什麼-Dauto意味着
- 30. AccountExpirationDate意味着什麼?