- Het gegevenstype dat u kunt gebruiken is
BLOB
. -
Converteer het PDF-bestand en bewaar de
byte[]
array in database.private byte[] getByteArrayFromFile(final Document handledDocument) throws IOException { final ByteArrayOutputStream baos = new ByteArrayOutputStream(); final InputStream in = new FileInputStream(handledDocument); final byte[] buffer = new byte[500]; int read = -1; while ((read = in.read(buffer)) > 0) { baos.write(buffer, 0, read); } in.close(); return baos.toByteArray(); }
-
Om het in DB in te voegen Als u ORM-tools gebruikt, hoeft u alleen de kolom als blob toe te wijzen en de tool zal het voor u afhandelen. Als u het niet gebruikt, kunt u een voorbereide verklaring maken. Statement heeft een methode genaamd setBlob() die handig zal zijn. Bekijk het onderstaande voorbeeld en maak een normale invoegquery met een blobkolom.
String sql = "INSERT INTO testtable(stringcolumn, blobcolumn) VALUES(?,?)"; PreparedStatement statement = conn.getConnection().prepareStatement(sql); statement.setLong(1, version); ByteArrayInputStream bais = new ByteArrayInputStream(getByteArrayFromFile(document)); statement.setBlob(2, bais); statement.execute(); conn.commit();