(注:このブログはもう更新していません)この日記は私的なものであり所属会社の見解とは無関係です。 GitHub: takahashikzn

[クラウド帳票エンジンDocurain]

@Lobなフィールドを遅延ロードできない件

次のようにして、@LobなフィールドをLazy loadingとして指示してもダメでした。

@Entity
public class ImageData {

    @Id
    private long id;

    @Column
    @Lob
    @Basic(fetch = FetchType.LAZY)
    private byte[] data;

    @Column
    private String name;

    ...
}

このように書いても、実際にImageData#getDataを呼ぶと常にnullが返ってきます。
どうやら遅延ロードできてないようです。


ここによると、weavingすればLazy loading出来るよ、と言っているのだけど。
ログを見る限り、きちんとweavingしているハズなんだけどな。何か間違っているのだろうか。