ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼­


JDBC ÇÁ·Î±×·¡¹Ö

ÀÀ¿ëÇÁ·Î±×·¥°ú ¾ÖÇø´ µÑ´Ù ´ÙÀ½°ú °°Àº ÀÛ¾÷À» ¼öÇàÇÕ´Ï´Ù.

  1. ÇØ´ç Java ÆÐŰÁö¿Í Ŭ·¡½º(java.sql.*)¸¦ °¡Á®¿À½Ê½Ã¿À.
  2. ÇØ´ç JDBC µå¶óÀ̹ö(ÀÀ¿ëÇÁ·Î±×·¥ÀÇ °æ¿ì COM.ibm.db2.jdbc.app.DB2Driver ¶Ç´Â ¾ÖÇø´ÀÇ °æ¿ì COM.ibm.db2.jdbc.net.DB2Driver)¸¦ ·ÎµåÇϽʽÿÀ.
  3. JDBC ½ºÆå¿¡¼­ Á¤ÀÇÇÑ URL·Î À§Ä¡¸¦ ÁöÁ¤Çϰí db2 ¼­ºêÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇϽʽÿÀ. ¾ÖÇø´ÀÇ °æ¿ì »ç¿ëÀÚ ID, ¾ÏÈ£, È£½ºÆ® À̸§ ¹× ¾ÖÇø´ ¼­¹öÀÇ Æ÷Æ® ¹øÈ£¸¦ Á¦°øÇØ¾ß ÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥Àº ´ëü °ªÀ» ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇÏÁö ¾Ê´Â ÀÌ»ó DB2 Ŭ¶óÀÌ¾ðÆ® Ä«Å»·Î±×¿¡¼­ »ç¿ëÀÚ ID¿Í ¾ÏÈ£ÀÇ ±âº»°ªÀ» ¾Ï½ÃÀûÀ¸·Î »ç¿ëÇÕ´Ï´Ù.
  4. µ¥ÀÌÅͺ£À̽º·Î SQL¹®À» Àü´ÞÇϽʽÿÀ.
  5. °á°ú¸¦ ¼ö½ÅÇϽʽÿÀ.
  6. ¿¬°áÀ» ´ÝÀ¸½Ê½Ã¿À.

ÇÁ·Î±×·¥ ÄÚµù ÈÄ ´Ù¸¥ Java ÇÁ·Î±×·¥ÀÇ °æ¿ì¿Í ¸¶Âù°¡Áö·Î ÄÄÆÄÀÏÇϽʽÿÀ. Ư¼öÇÑ »çÀü ó¸® ÄÄÆÄÀÏ ¶Ç´Â ¹ÙÀÎµå ´Ü°è¸¦ ¼öÇàÇÒ Çʿ䰡 ¾ø½À´Ï´Ù.

DB2Appl ÇÁ·Î±×·¥ÀÇ ÀÛ¾÷ ¹æ½Ä

´ÙÀ½ »ùÇà ÇÁ·Î±×·¥ DB2Appl.java ´Â DB2¿ë JDBC ÇÁ·Î±×·¥ ÄÚµù ¹æ¹ýÀÇ µ¥¸ð¸¦ ³ªÅ¸³À´Ï´Ù.

  1. JDBC ÆÐŰÁö °¡Á®¿À±â. ¸ðµç JDBC ¹× SQLJ ÇÁ·Î±×·¥¿¡¼­´Â JDBC ÆÐŰÁö¸¦ °¡Á®¿Í¾ß ÇÕ´Ï´Ù.
  2. ¿¬°á ¿ÀºêÁ§Æ® ¼±¾ð. ¿¬°á ¿ÀºêÁ§Æ®¿¡¼­ µ¥ÀÌÅͺ£À̽º ¿¬°áÀ» ¼³Á¤ÇÏ°í °ü¸®ÇÕ´Ï´Ù.
  3. µ¥ÀÌÅͺ£À̽º URL º¯¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù. DB2 ÀÀ¿ëÇÁ·Î±×·¥ µå¶óÀ̹ö¿¡¼­´Â jdbc:db2:>database name< ¾ç½ÄÀ» ÃëÇÏ´Â URLÀ» ¼ö¿ëÇÕ´Ï´Ù.
  4. µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°á. DriverManager.getConnection() ¸Þ¼Òµå´Â º¸Åë ´ÙÀ½ ¸Å°³º¯¼ö¿Í ÇÔ²² »ç¿ëµË´Ï´Ù.

    getConnection(String url)
    ±âº» »ç¿ëÀÚ ID¿Í ¾ÏÈ£·Î url¿¡ ÁöÁ¤µÈ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿¬°áÀ» ¼³Á¤ÇÕ´Ï´Ù.

    getConnection(String url, String userid, String password)
    °¢±â userid¿Í passwd¿¡ ÁöÁ¤µÈ »ç¿ëÀÚ ID¿Í ¾ÏÈ£·Î url¿¡ ÁöÁ¤µÈ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿¬°áÀ» ¼³Á¤ÇÕ´Ï´Ù.
  5. ¸í·É¹® ¿ÀºêÁ§Æ® ÀÛ¼º. ¸í·É¹® ¿ÀºêÁ§Æ®´Â µ¥ÀÌÅͺ£À̽º·Î SQL¹®À» Àü¼ÛÇÕ´Ï´Ù.
  6. SQL SELECT¹®À» ½ÇÇàÇÕ´Ï´Ù. SELECT¹®°ú °°ÀÌ ´ÜÀÏ °á°ú ¼¼Æ®¸¦ ¸®ÅÏÇÏ´Â SQL¹®ÀÇ executeQuery() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. ResultSet ¿ÀºêÁ§Æ®¿¡ °á°ú¸¦ ÇÒ´çÇÕ´Ï´Ù.
  7. ResultSetÀÇ Çà °Ë»ö. ResultSet ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇÏ¿© È£½ºÆ® ¾ð¾î Embedded SQL¿¡¼­ Ä¿¼­¿Í °°Àº °á°ú ¼¼Æ®¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ResultSet.next() ¸Þ¼Òµå´Â´ÙÀ½ ÇàÀ¸·Î Ä¿¼­¸¦ À̵¿Çϰí, °á°ú ¼¼Æ®ÀÇ ¸¶Áö¸· Çà¿¡ µµ´ÞÇÑ °æ¿ì boolean false °ªÀ» ¸®ÅÏÇÕ´Ï´Ù. °á°ú ¼¼Æ® 󸮿¡ ´ëÇÑ Á¦ÇÑ»çÇ×Àº µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ ±¸¼º ¸Å°³º¯¼ö¸¦ ÅëÇØ »ç¿ëµÇ´Â JDBC APIÀÇ ·¹º§¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù.
  8. Ä÷³ÀÇ °ª ¸®ÅÏ. ResultSet.getString(n)Àº nth Ä÷³ÀÇ °ªÀ» ¹®ÀÚ¿­ ¿ÀºêÁ§Æ®·Î ¸®ÅÏÇÕ´Ï´Ù.
  9. SQL UPDATE¹® ½ÇÇà. SQL UPDATE¹®ÀÇ executeUpdate() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â °»½ÅµÈ ÇàÀÇ ¼ö¸¦ Á¤¼ö °ªÀ¸·Î ¸®ÅÏÇÕ´Ï´Ù.

JDBC ¿¹: DB2Appl.java

import java.sql.*; (1) 
 
class DB2Appl {
 
   static {
      try {
         Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newInstance();
      } catch (Exception e) {
         System.out.println(e);
      }
   }
 
   public static void main(String argv[]) {
      Connection con = null; (2)
 
      // URL is jdbc:db2:dbname
      String url = "jdbc:db2:sample"; (3)
 
      try {
         if (argv.length == 0) {
            // connect with default id/password
            con = DriverManager.getConnection(url);
            }
         else if (argv.length == 2) {
            String userid = argv[0];
            String passwd = argv[1];
 
            // connect with user-provided username and password
            con = DriverManager.getConnection(url, userid, passwd); (4)
            }
         else {
            System.out.println("Usage: java DB2Appl [username password]");
            System.exit(0);
         }
 
         // retrieve data from the database
         System.out.println("Retrieve some data from the database...");
         Statement stmt = con.createStatement(); (5)
         ResultSet rs = stmt.executeQuery("SELECT * from employee"); (6)
 
         System.out.println("Received results:");
 
         // display the result set
         // rs.next() returns false when there are no more rows
         while (rs.next()) { (7)
            String a = rs.getString(1); (8)
            String str = rs.getString(2);
 
            System.out.print(" empno= " + a);
            System.out.print(" firstname= " + str);
            System.out.print("");
         }
 
         rs.close();
         stmt.close();
 
         // update the database
         System.out.println("Update the database... ");
         stmt = con.createStatement();
         int rowsUpdated = stmt.executeUpdate("UPDATE employee
	        SET firstnme = 'SHILI' where empno = '000010'");(9)
 
         System.out.print("Changed "+rowsUpdated);
 
         if (1 == rowsUpdated)
            System.out.println(" row.");
         else
            System.out.println(" rows.");
 
         stmt.close();
         con.close();
      } catch( Exception e ) {
         System.out.println(e);
      }
   }
}

JDBC ÀÀ¿ëÇÁ·Î±×·¥ ºÐ¹è

´Ù¸¥ Java ÀÀ¿ëÇÁ·Î±×·¥ÀÇ °æ¿ì¿Í ¸¶Âù°¡Áö·Î JDBC ÀÀ¿ëÇÁ·Î±×·¥À» ºÐ¹èÇϽʽÿÀ. ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ DB2 Ŭ¶óÀÌ¾ðÆ®¸¦ »ç¿ëÇÏ¿© DB2 ¼­¹ö¿Í Åë½ÅÇϹǷΠƯº°È÷ º¸¾È¿¡ ½Å°æ¾µ Çʿ䰡 ¾ø½À´Ï´Ù. ±ÇÇÑ °ËÁõÀº DB2 Ŭ¶óÀÌ¾ðÆ®¿¡¼­ ¼öÇàÇÕ´Ï´Ù.

Ŭ¶óÀÌ¾ðÆ® ¸Ó½Å¿¡¼­ ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÏ·Á¸é ±× ¸Ó½Å¿¡ ´ÙÀ½À» ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù.

ÀÀ¿ëÇÁ·Î±×·¥À» ºôµåÇÏ·Á¸é ¿î¿µ üÁ¦¿ë JDKµµ ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù. Java ȯ°æ ¼³Á¤, DB2 Java ÀÀ¿ëÇÁ·Î±×·¥ ºôµå ¹× DB2 Java ÀÀ¿ëÇÁ·Î±×·¥ ¼öÇà¿¡ ´ëÇØ¼­´Â ÀÀ¿ëÇÁ·Î±×·¥ ºôµå ¾È³»¼­¿¡¼­ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

JDBC ¾ÖÇø´ ºÐ¹è ¹× ¼öÇà

´Ù¸¥ Java ¾ÖÇø´°ú ¸¶Âù°¡Áö·Î ÀÎÆ®¶ó³ÝÀ̳ª ÀÎÅͳݰú °°Àº ³×Æ®¿öÅ©¿¡¼­ JDBC ¾ÖÇø´À» ºÐ¹èÇÕ´Ï´Ù. º¸Åë HTML ÆäÀÌÁö¿¡ ¾ÖÇø´À» EmbedÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, sqllib/samples/java¿¡ ÀÖ´Â »ùÇà ¾ÖÇø´ DB2Applt.java¸¦ È£ÃâÇϱâ À§ÇØ ´ÙÀ½ <APPLET> ű׸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

   <applet code="DB2Applt.class" width=325 height=275 archive="db2java.zip">
      <param name="server" value="webhost">
      <param name="port" value="6789">
   </applet>

¾ÖÇø´À» ¼öÇàÇÏ·Á¸é ´ÜÁö Ŭ¶óÀÌ¾ðÆ® ¸Ó½Å¿¡ Java Áö¿ø À¥ ºê¶ó¿ìÀú¸¸ ÀÖÀ¸¸é µË´Ï´Ù. HTML ÆäÀÌÁö¸¦ ·ÎµåÇÒ¶§ ¾ÖÇø´ ű׿¡¼­ ºê¶ó¿ìÀú¿¡ ¾ÖÇø´ ¹× db2java.zip Ŭ·¡½º ¶óÀ̺귯¸®¸¦ ´Ù¿î·ÎµåÇϵµ·Ï Áö½ÃÇÕ´Ï´Ù. ÀÌ Å¬·¡½º ¶óÀ̺귯¸®¿¡´Â COM.ibm.db2.jdbc.net Ŭ·¡½º¿¡¼­ ±¸ÇöÇÏ´Â DB2 JDBC µå¶óÀ̹ö°¡ ÀÖ½À´Ï´Ù. ¾ÖÇø´¿¡¼­ JDBC API¸¦ È£ÃâÇÏ¿© DB2¿¡ ¿¬°áÇϸé JDBC µå¶óÀ̹ö¿¡¼­ À¥ ¼­¹ö¿¡¼­ ¼öÇà ÁßÀÎ JDBC ¾ÖÇø´ ¼­¹ö¸¦ ÅëÇØ DB2 µ¥ÀÌÅͺ£À̽º¿Í º°µµÀÇ Åë½ÅÀ» ¼³Á¤ÇÕ´Ï´Ù.
ÁÖ:À¥ ºê¶ó¿ìÀú°¡ ¼­¹ö¿¡¼­ db2java.zipÀ» ´Ù¿î·ÎµåÇÏ·Á¸é Ŭ¶óÀÌ¾ðÆ®¿¡¼­ CLASSPATH ȯ°æ º¯¼ö´Â db2java.zipÀ» Æ÷ÇÔÇÏÁö ¸»¾Æ¾ß ÇÕ´Ï´Ù. ¾ÖÇø´Àº Ŭ¶óÀÌ¾ðÆ®°¡ db2java.zipÀÇ Áö¿ª ¹öÀüÀ» »ç¿ëÇÏ´Â °æ¿ì Á¦´ë·Î ±â´ÉÇÏÁö ¸øÇÕ´Ï´Ù.

Java ¾ÖÇø´ ºôµå ¹× ºÐ¹è¿¡ ´ëÇØ¼­´Â ÀÀ¿ëÇÁ·Î±×·¥ ºôµå ¾È³»¼­¿¡¼­ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

JDBC 2.0

JDBC 2.0Àº ÃֽйöÀüÀÇ Sun JDBCÀÔ´Ï´Ù. ÀÌ ¹öÀüÀÇ JDBC¿¡´Â µÎ °³ÀÇ Á¤ÀÇµÈ ÆÄÆ®, ÄÚ¾î API¿Í ¼±ÅÃÀû ÆÐŰÁö API°¡ ÀÖ½À´Ï´Ù. JDBC ½ºÆå¿¡ ´ëÇØ¼­´Â

DB2 Universal Database Java À¥ »çÀÌÆ® ¸¦ ÂüÁ¶ÇϽʽÿÀ.

¿î¿µ üÁ¦¿¡ ´ëÇØ JDBC 2.0 µå¶óÀ̹ö¸¦ ¼³Ä¡ÇÏ´Â °Í¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÀ¿ëÇÁ·Î±×·¥ ºôµå ¾È³»¼­À» ÂüÁ¶ÇϽʽÿÀ.

JDBC 2.0 ÄÚ¾î API Áö¿ø

DB2 JDBC 2.0 µå¶óÀ̹ö¿¡¼­´Â JDBC 2.0 ÄÚ¾î API¸¦ Áö¿øÇÏÁö¸¸ ½ºÆå¿¡ Á¤ÀÇµÈ ¸ðµç ÇÇó¸¦ Áö¿øÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. DB2 JDBC 2.0 µå¶óÀ̹ö´Â JDBC 2.0 ÄÚ¾î APIÀÇ ´ÙÀ½ ±â´ÉÀ» Áö¿øÇÕ´Ï´Ù.

ÁÖ:DB2´Â ÀúÀå ÇÁ·Î½Ãµà¾î, UDF ¶Ç´Â ¸Þ¼Òµå¿¡¼­ java.sql.BlobÀ̳ª java.sql.ClobÀÇ »ç¿ëÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

DB2 JDBC 2.0 µå¶óÀ̹ö´Â ´ÙÀ½ ±â´ÉÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

JDBC 2.0 ¼±ÅÃÀû ÆÐŰÁö API Áö¿ø

DB2 JDBC 2.0 µå¶óÀ̹ö´Â JDBC 2.0 ¼±ÅÃÀû ÆÐŰÁö APIÀÇ ´ÙÀ½ ±â´ÉÀ» Áö¿øÇÕ´Ï´Ù.

¸í¸í µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ Java ¸í¸í ¹× µð·ºÅ丮 ÀÎÅÍÆäÀ̽º(JNDI)

DB2´Â Java ¸í¸í ¹× µð·ºÅ丮 ÀÎÅÍÆäÀ̽º(JNDI)¿¡ ´ëÇØ ´ÙÀ½°ú °°Àº Áö¿øÀ» Á¦°øÇÕ´Ï´Ù.

javax.naming.Context
ÀÌ ÀÎÅÍÆäÀ̽º´Â DataSource ¿ÀºêÁ§Æ®ÀÇ ÀúÀå°ú °Ë»öÀ» ó¸®ÇÏ´Â COM.ibm.db2.jndi.DB2ContextÀ¸·Î ±¸ÇöµË´Ï´Ù. ³í¸®Àû µ¥ÀÌÅÍ ¼Ò½º À̸§ÀÇ Áö¼Ó ¿¬°üÀ» µ¥ÀÌÅͺ£À̽º À̸§°ú °°Àº ½ÇÁ¦ µ¥ÀÌÅͺ£À̽º Á¤º¸¿¡¼­ Áö¿øÇÏ·Á¸é ÀÌ·± ¿¬°üÀÌ .db2.jndi ÆÄÀÏ¿¡ ÀúÀåµÇ¾î¾ß ÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥¿¡ ´ëÇØ USER.HOME ȯ°æ º¯¼ö¿¡ ÀÇÇØ ÁöÁ¤µÈ µð·ºÅ丮¿¡ ÆÄÀÏÀÌ »óÁÖ((¶Ç´Â ¾øÀ¸¸é ÀÛ¼ºµÇ´Â)ÇÕ´Ï´Ù. ¾ÖÇø´¿¡ ´ëÇØ ÀÌ ÆÄÀÏÀ» À¥ ¼­¹öÀÇ ·çÆ® µð·ºÅ丮¿¡ ÀÛ¼ºÇÏ¿© lookup() ÀÛ¾÷À» ½±°Ô ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ¾ÖÇø´Àº ÀÌ Å¬·¡½ºÀÇ bind(), rebind(), unbind() ±×¸®°í rename() ¸Þ¼Òµå¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥¸¸ DataSource ¿ÀºêÁ§Æ®¸¦ JNDI¿¡ ¹ÙÀεåÇÒ ¼ö ÀÖ½À´Ï´Ù.

javax.sql.Datasource
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2DataSource·Î ±¸ÇöµË´Ï´Ù. ÀÌ Å¬·¡½ºÀÇ ¿ÀºêÁ§Æ®¸¦ javax.naming.Context ±¸Çö¿¡ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½º´Â ¶ÇÇÑ ¿¬°á Ç®¸µ Áö¿øÀ» »ç¿ëÇÕ´Ï´Ù.

javax.naming.InitialContextFactory
ÀÌ ÀÎÅÍÆäÀ̽º´Â DB2ContextÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÏ´Â COM.ibm.db2.jndi.DB2InitialContextFactory¿¡¼­ ±¸ÇöµË´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥Àº JAVA.NAMING.FACTORY.INITIAL ȯ°æ º¯¼öÀÇ °ªÀ» ÀÚµ¿À¸·Î COM.ibm.db2.jndi.DB2InitialContextFactory·Î ¼³Á¤ÇÕ´Ï´Ù. ¾ÖÇø´¿¡¼­ ÀÌ Å¬·¡½º¸¦ »ç¿ëÇÏ·Á¸é ´ÙÀ½ ±¸¹®À» »ç¿ëÇÏ¿© InitialContext()¸¦ È£ÃâÇϽʽÿÀ.

  Hashtable env = new Hashtable( 5 );
  env.put( "java.naming.factory.initial",
           "COM.ibm.db2.jndi.DB2InitialContextFactory" );
  Context ctx = new InitialContext( env );

¿¬°á Ç®¸µ

DB2ConnectionPoolDataSource¿Í DB2PooledConnectionÀº ´ÙÀ½°ú °°ÀÌ ÀÚü ¿¬°á Ç®¸µ ¸Þ¼Òµå¸¦ ±¸ÇöÇÏ´Â µ¥ ÇÊ¿äÇÑ ÈÄÅ©¸¦ Á¦°øÇÕ´Ï´Ù.

javax.sql.ConnectionPoolDataSource
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2ConnectionPoolDataSource¿¡¼­ ±¸ÇöµÇ°í COM.ibm.db2.jdbc.DB2PooledConnection ¿ÀºêÁ§Æ®ÀÇ ÆÑÅ丮ÀÔ´Ï´Ù.

javax.sql.PooledConnection
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2PooledConnectionÀ¸·Î ±¸ÇöµË´Ï´Ù.

Java Transaction API (JTA)

DB2´Â DB2 JDBC ÀÀ¿ëÇÁ·Î±×·¥ µå¶óÀ̹ö¸¦ ÅëÇØ Java Æ®·£Àè¼Ç API(JTA)¸¦ Áö¿øÇÕ´Ï´Ù. DB2´Â DB2 JDBC ³×Æ® µå¶óÀ̹ö·Î JTA Áö¿øÀ» Á¦°øÇÏÁö ¾Ê½À´Ï´Ù.

javax.sql.XAConnection
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2XAConnectionÀ¸·Î ±¸ÇöµË´Ï´Ù.

javax.sql.XADataSource
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2XADataSource·Î ±¸ÇöµÇ°í COM.ibm.db2.jdbc.DB2PooledConnection ¿ÀºêÁ§Æ®ÀÇ ÆÑÅ丮ÀÔ´Ï´Ù.

javax.transactions.xa.XAResource
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.app.DBXAResource·Î ±¸ÇöµË´Ï´Ù.

javax.transactions.xa.Xid
ÀÌ ÀÎÅÍÆäÀ̽º´Â COM.ibm.db2.jdbc.DB2Xid·Î ±¸ÇöµË´Ï´Ù.

JDBC 2.0 ȣȯ¼º

ÀÌ ¹öÀüÀÇ ½ºÆåÀº ÀÌÀü ¹öÀüÀÎ 1.22¿Í ¿ªÈ£È¯¼ºÀ» À¯ÁöÇÕ´Ï´Ù. ±×·¯³ª DB2 JDBC 1.22 µå¶óÀ̹ö¿¡¼­´Â LOB À¯ÇüÀ» JDBC 1.22 ½ºÆåÀÇ È®ÀåÀ¸·Î Áö¿øÇϸç ÀÌ È®ÀåÀº »õ·Î¿î ½ºÆåÀÇ ¿ªÈ£È¯¼ºÀÇ ÀϺΰ¡ µÇÁö ¾Ê½À´Ï´Ù. Áï, JDBC 1.22 µå¶óÀ̹öÀÇ LOB Áö¿ø¿¡ ÀÇÁ¸ÇÏ´Â ±âÁ¸ JDBC ÀÀ¿ëÇÁ·Î±×·¥ÀÌ »õ·Î¿î µå¶óÀ̹ö¿¡ ´ëÇØ ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. LOB ¹× ±×·¡ÇÈ À¯Çü¿¡ ´ëÇÑ DB2 JDBC 1.22 µå¶óÀ̹ö Áö¿øÀº JDBC 1.22¿¡ LOB ¹× ±×·¡ÇÈ ¿ÀºêÁ§Æ® »ç¿ë¿¡¼­ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ. ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÁ¤ÇÏ¿© JDBC 2.0 µå¶óÀ̹ö¿¡¼­ Á¦°øµÇ´Â LOB Áö¿øÀ» »ç¿ëÇÏ´Â °Í¿¡ ´ëÇØ °í·ÁÇϽʽÿÀ.
ÁÖ:ÀúÀå ÇÁ·Î½Ãµà¾î ¶Ç´Â UDF¿¡ ÀÖ´Â LOB¿Í ±×·¡ÇÈ À¯ÇüÀÇ DB2 JDBC 2.0 µå¶óÀ̹ö Áö¿øÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ÀúÀå ÇÁ·Î½Ãµà¾î³ª UDF¿¡¼­ LOB ¶Ç´Â ±×·¡ÇÈ À¯ÇüÀ» »ç¿ëÇÏ·Á¸é JDBC 1.22 µå¶óÀ̹ö Áö¿øÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

±×·¯³ª ÀÌ ¼Ö·ç¼ÇÀÌ ¸ðµç »óȲ¿¡ ÀûÇÕÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ÀϽÃÀûÀÎ ÇØ°áÃ¥À¸·Î JDBCVERSION Ű¿öµå¸¦ "122"·Î ¼³Á¤ÇÏ¿© 1.22 ¹öÀüÀÇ LOB Áö¿øÀ» »ç¿ëÇϵµ·Ï JDBC 2.0 µå¶óÀ̹ö¿¡ Áö½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»°ª "200"À¸·Î ¼³Á¤Çϸé JDBC 2.0 µå¶óÀ̹ö¿¡¼­ 2.0 ¹öÀüÀÇ LOB Áö¿øÀ» »ç¿ëÇÕ´Ï´Ù. db2cli.ini¿¡¼­ ÀÌ Å°¿öµå¸¦ ¼³Á¤Çϰųª getConnection Ư¼º ÀμöÀÇ ¿¬°á ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù.
ÁÖ:JDBC 1.22 µå¶óÀ̹ö¸¦ »ç¿ëÇÒ °æ¿ì JDBCVERSION Ű¿öµå´Â JDBC¿¡ ´ëÇÑ LOB Áö¿ø¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]