Non ho capito bene. Emmanuel Bernard ha scritto in ANN-418
quel @Lob
sono pigri per impostazione predefinita (cioè non hai nemmeno bisogno di usare il @Basic(fetch = FetchType.LAZY)
annotazione).
Alcuni utenti segnalano il caricamento lento di un @Lob
non funziona con tutti i driver/database
.
Alcuni utenti segnalano che funziona quando si utilizza la strumentazione bytecode (javassit? cglib?).
Ma non riesco a trovare alcun riferimento chiaro di tutto questo nella documentazione.
Alla fine, la soluzione alternativa consigliata consiste nell'usare un mapping uno-a-uno "falso" invece delle proprietà. Rimuovere i campi LOB dalla classe esistente, creare nuove classi facendo riferimento alla stessa tabella, alla stessa chiave primaria e solo ai campi LOB necessari come proprietà. Specificare le mappature come uno a uno, fetch="select", lazy="true". Finché il tuo oggetto padre è ancora nella tua sessione, dovresti ottenere esattamente ciò che desideri. (basta trasporre questo nelle annotazioni).