PessoALL,
Estou usando jdbc puro, para maior performance.
Inseri alguns arquivos no banco de dados postgres, até uns 300mb, até aí blz.
Estou com problemas na hora de recuperar.
tenho uma tabela chamada Repositório que foi criada do seguinte modo:
CREATE TABLE REPOSITORIO (
id_repositorio serial,
nome_arquivo varchar,
tamanho integer,
arquivo bytea,
pk…)
bytea é o equivalente no postgres ao blob.
Quando vou recuperar o arquivo que tem um tamanho maior que uns 50 mb, o java me estoura o heap, utilizo a seguinte implementação pra recuperar:
StringBuilder sql = new StringBuilder();
sql.append("select * from repositorio where id_repositorio = ?");
PreparedStatement prest = null;
Connection con = Conexao.getConnection();
ResultSet result = null;
try {
prest = con.prepareStatement(sql.toString());
prest.setLong(1, idRepositorio);
result = prest.executeQuery(); //estoura o heap
soluções??
para arquivos menores, está funcionando de boa!