##################################### # DB¿¡ JAVA Object ÀÔ·ÂÇϱâ # ##################################### ÀÛ¼ºÀÚ : ÀåÇüÈ(hhjang97@venus.uos.ac.kr) ÀÛ¼ºÀÏ : 2005. 10. 11 ¼öÁ¤ÀÏ : ¿øº» : ¼³¸í : Oracle DB¿¡ ÀÚ¹Ù¸¦ °´Ã¼ ÇüÅ·ΠÀúÀåÇϱâ Writing Advanced Applications Chpater 4:JDBC Technology ÂüÁ¶ create table lob_test( id number(5), blob_col BLOB default EMPTY_BLOB() ); ################################# ################################# ################################# ¼Ò½º ´Ù¿î·Îµå TestObjectÀº Serializable ÇØ¾ß µÇ°í.. TestObject¿¡ Æ÷ÇԵǴ °´Ã¼µµ Serializable ÇØ¾ß µÈ´Ù. public class TestObject implements Serializable { public int testid = 1234; public String testStr = "bbbb"; public MyObject; // MyObject µµ Serializable ÇØ¾ßµÊ } ################################# # DB¿¡ ÀÔ·ÂÇϱâ ################################# // TestObject À» Á÷·ÄÈ ÇÑ´Ù. java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream(); java.io.ObjectOutputStream oos = new java.io.ObjectOutputStream(bos); oos.writeObject(testObject); byte[] bytes = bos.toByteArray(); oos.close(); bos.close(); ByteArrayInputStream regArrayStream = new ByteArrayInputStream(bytes); pstmt.setBinaryStream( 1, regArrayStream, bytes.length); ################################# # BLOB·Î ÀúÀåÈÄ Àбâ ################################# // BLOB Àбâ Blob blob = rs.getBlob("blob_col"); ObjectInputStream regObjectStream = new ObjectInputStream(blob.getBinaryStream()); TestObject testObj = (TestObject) regObjectStream.readObject(); ################################# # byte[] ·Î ÀúÀåÈÄ Àбâ ################################# byte[] regBytes = rs.getBytes("blob_col"); // blob_col ByteArrayInputStream regArrayStream = new ByteArrayInputStream(regBytes); ObjectInputStream regObjectStream = new ObjectInputStream(regArrayStream); TestObject testObj = (TestObject) regObjectStream.readObject();