2012-05-10 56 views
3

我有一個非常簡單的JPA實體。它具有一些簡單的元數據字段,ID和一個大〜500kB-10MB的有效載荷字符串。OpenJPA1.2 - 延遲加載BLOB

@Entity 
public class MyEntity{ 
    @Id 
    @GenerateValue(Strategy=GenerationType.IDENTITY) 
    private long myEntityId; 

    private String metaData1; 
    .. 
    private String metaDataN; 

    @Lob 
    private String payload; // large. 

}

大多數時候,我不是在有效載荷裝載intersseted,而是簡單地查詢元數據字段。有沒有辦法加載負載惰性,而不創建一個包裝有效載荷的特定實體,並有一個懶惰的負載與我主實體的一對一關係?

整個事情是使用OpenJPA 1.2和DB2備份數據庫實現的。

回答

8
@Lob 
@Basic(fetch=FetchType.LAZY) 
private String payload; 
+0

非常感謝您加載! –

0

我想你也可以使用:

@OneToOne(fetch=FetchType.LAZY) 
@JoinColumn(//some col. name) 
private String payload; 
0

Hibernate不弔射,只要它映射它作爲類型高球

+0

我真的不明白這句話。在這個老問題 - 映射類型實際上是CLOB。 –