¸ñÂ÷    

JDBC ÀÎÁõ ¼Ó¼º

JDBC(Java Database Connectivity) ÀÎÁõ ¼Ó¼ºÀº Á¶Á÷ ¼Ó¼ºÀÔ´Ï´Ù. ¼­ºñ½º ±¸¼º¿¡¼­ ÀÌ·¯ÇÑ ¼Ó¼º¿¡ Àû¿ëµÇ´Â °ªÀÌ JDBC ÀÎÁõ ÅÛÇø®Æ®ÀÇ ±âº»°ªÀÌ µË´Ï´Ù. Á¶Á÷ÀÇ ¼­ºñ½º¸¦ µî·ÏÇÑ ÈÄ ¼­ºñ½º ÅÛÇø®Æ®¸¦ ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ±âº»°ªÀº Á¶Á÷ÀÇ °ü¸®ÀÚ°¡ µî·Ï ÈÄ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¶Á÷ÀÇ Ç׸ñÀº Á¶Á÷ ¼Ó¼ºÀ» »ó¼ÓÇÏÁö ¾Ê½À´Ï´Ù. JDBC ÀÎÁõ ¼Ó¼ºÀº ´ÙÀ½°ú °°½À´Ï´Ù.

¿¬°á À¯Çü

ÀÌ Çʵå´Â JNDI(Java Naming and Directory Interface) ¿¬°á Ç® ¶Ç´Â JDBC µå¶óÀ̹ö¸¦ »ç¿ëÇÏ¿© SQL µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿¬°á À¯ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿É¼ÇÀº ´ÙÀ½°ú °°½À´Ï´Ù.

JNDI ¿¬°á Ç®Àº ±âº» À¥ ÄÁÅ×À̳ʿ¡¼­ ±¸¼ºÀ» »ç¿ëÇÕ´Ï´Ù.

¿¬°á Ç® JNDI À̸§

¿¬°á À¯Çü¿¡¼­ JNDI¸¦ ¼±ÅÃÇϸé ÀÌ Çʵ尡 ¿¬°á Ç® À̸§À» ÁöÁ¤ÇÕ´Ï´Ù. JDBC ÀÎÁõ¿¡¼­ À¥ ÄÁÅ×À̳ʰ¡ Á¦°øÇÏ´Â JNDI ¿¬°á Ç®À» »ç¿ëÇϹǷΠJNDI ¿¬°á Ç®ÀÇ ¼³Á¤ÀÌ ´Ù¸¥ À¥ ÄÁÅ×ÀÌ³Ê¿Í ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù.

´ÙÀ½Àº Web Server ¹× MySQL 4.0¿ëÀ¸·Î ¿¬°á Ç®À» ¼³Á¤ÇÏ´Â ¿¹ÀÔ´Ï´Ù.

  1. Web Server Äֿܼ¡¼­ ´ÙÀ½ ¼Ó¼ºÀ» °¡Áø JDBC ¿¬°á Ç®À» ¸¸µì´Ï´Ù.
  2. Ç® À̸§: samplePool

    µ¥ÀÌÅÍ ¼Ò½º Ŭ·¡½º À̸§: com.mysql.jdbc.jdbc2.optional.MysqlDatacSource

    ¼­¹ö À̸§: mySQL ¼­¹öÀÇ ¼­¹ö À̸§

    Æ÷Æ®: mySQL ¼­¹ö°¡ ½ÇÇà ÁßÀÎ Æ÷Æ® ¹øÈ£

    »ç¿ëÀÚ: µ¥ÀÌÅͺ£À̽ºÀÇ »ç¿ëÀÚ À̸§

    ºñ¹Ð¹øÈ£: »ç¿ëÀÚ ºñ¹Ð¹øÈ£

    µ¥ÀÌÅͺ£À̽º À̸§: µ¥ÀÌÅͺ£À̽º À̸§


    ÁÖ

    ´ÙÀ½ ´Ü°è¿¡¼­ ¼³¸íÇÏ´Â µ¥ÀÌÅÍ ¼Ò½º Ŭ·¡½º ¹× JDBC µå¶óÀ̹ö Ŭ·¡½º¸¦ Æ÷ÇÔÇÏ´Â jar ÆÄÀÏÀ» ÀÀ¿ë ÇÁ·Î±×·¥ Ŭ·¡½º °æ·Î¿¡ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù.


  3. JDBC ÀÚ¿øÀ» ±¸¼ºÇÕ´Ï´Ù. Web Server Äֿܼ¡¼­ ´ÙÀ½ ¼Ó¼ºÀ» °¡Áø JDBC ÀÚ¿øÀ» ¸¸µì´Ï´Ù.
  4. JNDI À̸§: jdbc/samplePool

    Ç® À̸§: samplePool

    µ¥ÀÌÅÍ ÀÚ¿ø »ç¿ë: on

  5. ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ sun-web.xml ÆÄÀÏ¿¡ ´ÙÀ½ ÇàÀ» Ãß°¡ÇÕ´Ï´Ù.
  6. <resource-ref>

    <res-ref-name>jdbc/mySQL</res-ref-name>

    <jndi-name>jdbc/samplePool</jndi-name>

    </resource-ref>

  7. ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ web.xml ÆÄÀÏ¿¡ ´ÙÀ½ ÇàÀ» Ãß°¡ÇÕ´Ï´Ù.
  8. <resource-ref>

    <description>mySQL Database</description>

    <res-ref-name>jdbc/mySQL</res-ref-name>

    <res-type>javax.sql.DataSource</res-type>

    <res-auth>Container</res-auth>

    </resource-ref>

¼³Á¤À» ¿Ï·áÇϸé ÀÌ ¼Ó¼º °ªÀÌ ´ÙÀ½°ú °°¾Æ¾ß ÇÕ´Ï´Ù.

java:comp/env/jdbc/mySQL

JDBC µå¶óÀ̹ö

¿¬°á À¯Çü¿¡¼­ JDBC¸¦ ¼±ÅÃÇÑ °æ¿ì ÀÌ Çʵ忡¼­ SQL µ¥ÀÌÅͺ£À̽º°¡ Á¦°øÇÏ´Â JDBC¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

com.mysql.jdbc.Driver

JDBC URL

¿¬°á À¯Çü¿¡¼­ JDBC¸¦ ¼±ÅÃÇÑ °æ¿ì ÀÌ Çʵ忡¼­ µ¥ÀÌÅͺ£À̽º URLÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, mySQLÀÇ URLÀº ´ÙÀ½°ú °°½À´Ï´Ù.

jdbc.mysql://hostname:port/databaseName

µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÒ »ç¿ëÀÚ

ÀÌ Çʵ忡¼­´Â JDBC¿¡ ¿¬°áÇϱâ À§ÇØ µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÒ »ç¿ëÀÚ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.

µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÒ ºñ¹Ð¹øÈ£

ÀÌ Çʵ忡¼­´Â µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÒ »ç¿ëÀÚ¿¡¼­ ÁöÁ¤ÇÑ »ç¿ëÀÚÀÇ ºñ¹Ð¹øÈ£¸¦ Á¤ÀÇÇÕ´Ï´Ù.

µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÒ ºñ¹Ð¹øÈ£(È®ÀÎ)

ºñ¹Ð¹øÈ£¸¦ È®ÀÎÇÕ´Ï´Ù.

µ¥ÀÌÅͺ£À̽ºÀÇ ºñ¹Ð¹øÈ£ ¿­

ÀÌ Çʵ忡¼­´Â SQL µ¥ÀÌÅͺ£À̽ºÀÇ ºñ¹Ð¹øÈ£ ¿­ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.

ÁغñµÈ ¸í·É¹®

ÀÌ Çʵ忡¼­´Â ·Î±×ÀÎÇÑ »ç¿ëÀÚÀÇ ºñ¹Ð¹øÈ£¸¦ °Ë»öÇÏ´Â SQL ¹®À» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½°ú °°½À´Ï´Ù.

select Password from Employees where USERNAME = ?

ºñ¹Ð¹øÈ£ ±¸¹®À» º¯È¯ÇÒ Å¬·¡½º

ÀÌ ¼Ó¼ºÀº ºñ¹Ð¹øÈ£¸¦ ºñ±³Çϱâ À§ÇØ µ¥ÀÌÅͺ£À̽º¿¡¼­ °Ë»öÇÑ ºñ¹Ð¹øÈ£¸¦ »ç¿ëÀÚ ÀÔ·Â Çü½ÄÀ¸·Î º¯È¯ÇÒ Å¬·¡½º À̸§À» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ Å¬·¡½º´Â ¹Ýµå½Ã JDBCPasswordSyntaxTransform ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù.

ÀÎÁõ ¼öÁØ

ÀÎÁõ ¼öÁØÀº °¢ ÀÎÁõ ¹æ¹ý¿¡ ´ëÇØ º°µµ·Î ¼³Á¤µË´Ï´Ù. ÀÌ °ªÀº ÀÎÁõÀ» ¾î´À Á¤µµ ½Å·ÚÇÒ ¼ö ÀÖ´ÂÁö ³ªÅ¸³À´Ï´Ù. »ç¿ëÀÚ°¡ ÀÎÁõµÇ°í ³ª¸é ÇØ´ç ¼¼¼ÇÀÇ SSO ÅäÅ«¿¡ ÀÌ °ªÀÌ ÀúÀåµË´Ï´Ù. »ç¿ëÀÚ°¡ ¾×¼¼½ºÇÏ·Á´Â ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ÀÌ SSO ÅäÅ«ÀÌ Á¦°øµÇ¸é ÀÀ¿ë ÇÁ·Î±×·¥Àº ÀúÀåµÈ °ªÀ» »ç¿ëÇÏ¿© ÇØ´ç ¼öÁØÀÌ »ç¿ëÀÚ¿¡°Ô ¾×¼¼½º¸¦ Çã°¡ÇÒ ¸¸Å­ ÃæºÐÇÑÁö ¿©ºÎ¸¦ È®ÀÎÇÕ´Ï´Ù. SSO ÅäÅ«¿¡ ÀúÀåµÈ ÀÎÁõ ¼öÁØÀÌ ÇÊ¿äÇÑ ÃÖ¼Ò°ªÀ» ÃæÁ·ÇÏÁö ¾ÊÀ» °æ¿ì ÀÀ¿ë ÇÁ·Î±×·¥Àº ´õ ³ôÀº ÀÎÁõ ¼öÁØÀ» °¡Áø ¼­ºñ½º¸¦ ÅëÇØ ´Ù½Ã ÀÎÁõÀ» ¹ÞÀ¸¶ó´Â ¸Þ½ÃÁö¸¦ »ç¿ëÀÚ¿¡°Ô Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»°ªÀº 0ÀÔ´Ï´Ù.


¸ñÂ÷