Blob - Inserindo um JAR muito grande

Estou inserindo um jar num campo blob do banco corretamente. Agora, quando eu insiro um jar grande, por exempo um de 40 MB, dá um erro “java heap space” . O erro acontece na linha 6 (ver codigo abaixo). Acredito que seja pelo fato de ele está tentando carregar todo jar em memoria para inserir no banco. Tem como inserir o jar por partes no banco, para nao sobrecarregar a memoria ??

 public void ArmazenaImagem(File file) throws SQLException, IOException {

       

1       FileInputStream fis = new FileInputStream(file);

2       String sql = "INSERT INTO " + Nometabela + " (" + NomeArquivoColuna + ", "

3       + NomeDadoColuna + ") VALUES (?, ?)"; 

4      PreparedStatement ps =connection.prepareStatement(sql);

5      ps.setString(1, file.getName());

6      ps.setBinaryStream(2, fis, fis.available());

7      ps.execute();

8      ps.close();

9      fis.close();

       

    }

valeu !!