¸ñÂ÷
|
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¿ëÀ¸·Î ¿¬°á Ç®À» ¼³Á¤ÇÏ´Â ¿¹ÀÔ´Ï´Ù.
- Web Server Äֿܼ¡¼ ´ÙÀ½ ¼Ó¼ºÀ» °¡Áø JDBC ¿¬°á Ç®À» ¸¸µì´Ï´Ù.
Ç® À̸§: samplePool
µ¥ÀÌÅÍ ¼Ò½º Ŭ·¡½º À̸§: com.mysql.jdbc.jdbc2.optional.MysqlDatacSource
¼¹ö À̸§: mySQL ¼¹öÀÇ ¼¹ö À̸§
Æ÷Æ®: mySQL ¼¹ö°¡ ½ÇÇà ÁßÀÎ Æ÷Æ® ¹øÈ£
»ç¿ëÀÚ: µ¥ÀÌÅͺ£À̽ºÀÇ »ç¿ëÀÚ À̸§
ºñ¹Ð¹øÈ£: »ç¿ëÀÚ ºñ¹Ð¹øÈ£
µ¥ÀÌÅͺ£À̽º À̸§: µ¥ÀÌÅͺ£À̽º À̸§
ÁÖ
´ÙÀ½ ´Ü°è¿¡¼ ¼³¸íÇÏ´Â µ¥ÀÌÅÍ ¼Ò½º Ŭ·¡½º ¹× JDBC µå¶óÀ̹ö Ŭ·¡½º¸¦ Æ÷ÇÔÇÏ´Â jar ÆÄÀÏÀ» ÀÀ¿ë ÇÁ·Î±×·¥ Ŭ·¡½º °æ·Î¿¡ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù.
- JDBC ÀÚ¿øÀ» ±¸¼ºÇÕ´Ï´Ù. Web Server Äֿܼ¡¼ ´ÙÀ½ ¼Ó¼ºÀ» °¡Áø JDBC ÀÚ¿øÀ» ¸¸µì´Ï´Ù.
JNDI À̸§: jdbc/samplePool
Ç® À̸§: samplePool
µ¥ÀÌÅÍ ÀÚ¿ø »ç¿ë: on
- ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ sun-web.xml ÆÄÀÏ¿¡ ´ÙÀ½ ÇàÀ» Ãß°¡ÇÕ´Ï´Ù.
<resource-ref>
<res-ref-name>jdbc/mySQL</res-ref-name>
<jndi-name>jdbc/samplePool</jndi-name>
</resource-ref>
- ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ web.xml ÆÄÀÏ¿¡ ´ÙÀ½ ÇàÀ» Ãß°¡ÇÕ´Ï´Ù.
¼³Á¤À» ¿Ï·áÇϸé ÀÌ ¼Ó¼º °ªÀÌ ´ÙÀ½°ú °°¾Æ¾ß ÇÕ´Ï´Ù.
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ÀÔ´Ï´Ù.
¸ñÂ÷ |