Menyimpan Berkas BLOB ke Database Menggunakan Java Database Connectivity


Java Programming

Java Programming

Tadi pagi ada yang SMS, gimana cara menyimpan data berkas ke database dengan tipe kolom BLOB. Hal ini mungkin berguna, saat misal kita akan menyimpan gambar photo karyawan di database, jadi photonya tidak disimpan di hardisk, tapi langsung di database, atau juga menyimpan data dokumen word atau excel langsung ke database. Caranya cukup mudah 😀

        Connection connection = ...

        PreparedStatement statement = connection.prepareStatement("insert into contoh_blob (id, data) values (null, ?)");

        File file = new File("/home/echo/Desktop/Me");

        statement.setBlob(1, new FileInputStream(file));

        statement.executeUpdate();

        connection.close();

Anda tinggal mengubah lokasi File nya saja untuk memasukkan datanya 😀 Mudah kan? Bagaimana jika kita akan meload datanya? Untuk meload datanya, anda cukup getBlob() di ResultSet, lalu getBytes agar datanya berupa byte[].

        Connection connection = ...

        Statement statement = connection.createStatement();
        ResultSet result = statement.executeQuery("select * from contoh_blob where id = 1");

        result.next();

        Blob blob = result.getBlob("data");
        byte[] data = blob.getBytes(1, (int) blob.length());

        result.close();
        statement.close();
        connection.close();

Jika file tersebut berisikan TEKS, anda dapat mengkonfersi byte[] tersebut ke String dengan cara seperti berikut ini :

        Blob blob = result.getBlob("data");
        byte[] data = blob.getBytes(1, (int) blob.length());

        String text = new String(data);

Jika file tersebut berrisikan IMAGE, anda dapat menampilkannya di Form menggunakan ImageIcon seperti berikut :

        Blob blob = result.getBlob("data");
        byte[] data = blob.getBytes(1, (int) blob.length());

        ImageIcon icon = new ImageIcon(data);

        jLabel.setIcon(icon);

Mudah bukan? Tidak ada yang sulit 😀

Iklan

9 pemikiran pada “Menyimpan Berkas BLOB ke Database Menggunakan Java Database Connectivity

  1. Assalamualaikum…..
    permisi numpang tanya…
    saya dapet tugas kuliah untuk membuat aplikasi penyimpanan data pendukung kependudukan… dsini saya menggunakan database oracle… dsana saya harus menghubungkan antara aplikasi dan hardware (scanner)… setiap penduduk harus memberikan data pendukung berupa fotokopi arsip2 pribadi yang kemudian discan dan disimpan… yang ingin saya tanyakan bagaimana caranya menyimpan gambar yg terscan ke database??? dan bagaimana memunculkan gambar2 yang berkaitan ketika nama(NIK) dari penduduk itu dipanggil… mohon bantuannya…. terima kasih…
    wassalamualaikum….

  2. Assalammu’alaikum mas Eko..
    Saya mau nanya berkenaan tentang menyimpan berkas di atas,
    apabila kita ingin menyimpan data alamat – alamat link address suatu web browser ke database bagaimana mas???
    Mohon bantuannya ya mas Eko..
    Terimakasih..

  3. min tanya,, minsal statement.setBlob(1, new FileInputStream(null)) kan NullPointerException tuh, birpun udh di try-catch(NullPointerException) tpi catch(SQLException) nangkep juga(no value spesific for parameter 1).
    nah klo cara allow field blob null pke mthod itu gimana?

    terimakasi sebelumnya 😀

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s