Oracle
 sql >> Database >  >> RDS >> Oracle

Come eseguire lo streaming di BLOB di grandi dimensioni dal database all'applicazione utilizzando JPA?

Questa è una risposta tardiva, ma per chi è ancora alla ricerca di una soluzione, ho trovato un buon articolo di Thorben Janssen sul blog Thoughts on Java. Lo svantaggio è che è specifico di Hibernate, ma sembra che tu lo usi comunque. Fondamentalmente la soluzione è usare gli attributi del tipo di dati java.sql.Blob nella tua entità

@Entity
public class Book {

    @Id
    @GeneratedValue
    private Long id;

    private String title;

    @Lob
    private Clob content;

    @Lob
    private Blob cover;

    ...
}

E poi usi BlobProxy di Hibernate, che fornisce un OutputStream. Ma dai un'occhiata all'articolo qui