Store and retrieve an object from a table : Blob Binary Data JDBC « Database SQL JDBC « Java






Store and retrieve an object from a table

  

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

public class Main {

  public static void main(String args[]) throws Exception {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    String URL = "jdbc:odbc:dbname";
    Connection dbConn = DriverManager.getConnection(URL, "user", "passw");
    Employee employee = new Employee(42, "AA", 9);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ObjectOutputStream oos = new ObjectOutputStream(baos);
    oos.writeObject(employee);
    byte[] employeeAsBytes = baos.toByteArray();
    PreparedStatement pstmt = dbConn
        .prepareStatement("INSERT INTO EMPLOYEE (emp) VALUES(?)");
    ByteArrayInputStream bais = new ByteArrayInputStream(employeeAsBytes);
    pstmt.setBinaryStream(1, bais, employeeAsBytes.length);
    pstmt.executeUpdate();
    pstmt.close();
    Statement stmt = dbConn.createStatement();
    ResultSet rs = stmt.executeQuery("SELECT emp FROM Employee");
    while (rs.next()) {
      byte[] st = (byte[]) rs.getObject(1);
      ByteArrayInputStream baip = new ByteArrayInputStream(st);
      ObjectInputStream ois = new ObjectInputStream(baip);
      Employee emp = (Employee) ois.readObject();
    }
    stmt.close();
    rs.close();
    dbConn.close();
  }
}

class Employee implements Serializable {
  int ID;
  String name;
  double salary;

  public Employee(int ID, String name, double salary) {
    this.ID = ID;
    this.name = name;
    this.salary = salary;
  }
}

   
    
  








Related examples in the same category

1.Read BLOBs data from database
2.Store BLOBs data into database
3.Insert picture to MySQL
4.Demo Display Binary Data From Database
5.Materialize binary data onto client
6.Blob: JDBC deals with Binary Data
7.Inserting Image in Database Table
8.Blob and JDBC: Image
9.Blob: Image 2
10.Blob: image 3
11.Insert an Image
12.Retrieve an Image
13.Read CLOBs data from database
14.Getting BLOB Data from a Database Table: how to retrieves bytes from a BLOB.
15.Store CLOBs data into database?
16.Getting and Inserting Binary Data into an Database Table