我在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意味着什么?