在SQL中,很容易进行连接,只返回连接表中所需的列。在JPA / Hibernate中映射它的最佳方法是什么?
例如,有一个映射到EMAIL_FOLDER的Folder实体和一个映射到EMAIL表的Email实体。从文件夹到电子邮件之间存在一对多的关系。电子邮件实体相当繁重,因为它包含文本,附件等的CLOB。在某些情况下,我们需要恢复整个电子邮件,还有其他情况我们只想恢复senderName,subject和sentDate以及不希望引入CLOB数据的内存开销。在SQL中实现这一点很简单,但我不确定JPA / Hibernate中最好的方法是什么。
我正在考虑创建一个只映射到senderName,subject和sentDate的LightEmail。这是处理这类事情的最好方法吗?
更新:此时我想尽可能避免字节码检测。
答案 0 :(得分:1)
将属性(CLOB)注释为@Basic(fetch=FetchType.LAZY)
请参阅Hibernate参考中的Declaring basic property mappings