- Typ danych, którego możesz użyć to
BLOB
. -
Konwertuj plik PDF i zachowaj
byte[]
tablica w bazie danych.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(); }
-
Aby wstawić go do DB Jeśli używasz jakichkolwiek narzędzi ORM, wystarczy zmapować kolumnę jako blob, a narzędzie obsłuży to za Ciebie. Jeśli go nie używasz, możesz stworzyć przygotowane zestawienie. Instrukcja zawiera metodę o nazwie setBlob(), która będzie przydatna. Rozważ poniższy przykład i utwórz normalne zapytanie wstawiające z kolumną blob.
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();