Sun ONE Web Server 6.1 °ü¸®ÀÚ ¼³¸í¼ |
12Àå
À̸§ ÁöÁ¤ ¹× ¸®¼Ò½º ±¸¼º±¸¼º ¿ä¼Ò ±â¹Ý Java¢â 2 Platform, Enterprise Edition(J2EE¢â ) ±â¼úÀº ¿£ÅÍÇÁ¶óÀÌÁî °³¹ß ¹× ±¸ÇöÀ» ´Ü¼øÈÇÏ´Â À¥ ¼ºñ½º¿ë ÀÎÇÁ¶ó¸¦ Á¦°øÇÕ´Ï´Ù.
ÀÌ Àå¿¡¼´Â Sun ONE Web Server¿¡¼ Á¦°øµÇ´Â J2EE ¸®¼Ò½º¿¡ ´ëÇØ ¼³¸íÇÏ°í ÀÌµé ¸®¼Ò½º¸¦ ¸¸µé°í °ü¸®ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ »ìÆ캾´Ï´Ù.
Java º¸¾È ¹× ¿µ¿ª ±â¹Ý ÀÎÁõ¿¡ ´ëÇÑ ¼³¸íÀº À¥ ÄÁÅ×ÀÌ³Ê ¹× À¥ ÀÀ¿ë ÇÁ·Î±×·¥¿ë J2EE ±â¹Ý º¸¾ÈÀ» ÂüÁ¶ÇϽʽÿÀ.
ÀÌ Àå¿¡¼´Â ´ÙÀ½ Ç׸ñ¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
Java »ç¿ë ¼³Á¤Java´Â Àü¿ªÀû, Áï Sun ONE Web Server ÀνºÅϽº¸¶´Ù »ç¿ë ¼³Á¤Çϰųª ƯÁ¤ °¡»ó ¼¹ö Ŭ·¡½º¸¶´Ù »ç¿ë ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»ÀûÀ¸·Î Java´Â Sun ONE Web Server¿¡¼ »ç¿ë ¼³Á¤µÇ¸ç ´ÙÀ½ ÁÙÀÌ magnus.conf ÆÄÀÏ¿¡ Ãß°¡µË´Ï´Ù.
Init fn="load-modules" shlib="<server-root>/bin/https/lib/libj2eeplugin.so"
¶ÇÇÑ Æ¯Á¤ °¡»ó ¼¹ö¿ëÀ¸·Î Java¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Java¸¦ ¼³Á¤ÇÏ¸é ¼¹ö°¡ ÇØ´ç °¡»ó ¼¹ö Ŭ·¡½º¿ë obj.conf ÆÄÀÏÀ» ÇÊ¿äÇÑ J2EE Áö½Ã¹®À» Æ÷ÇÔÇÏ¿© ¾÷µ¥ÀÌÆ®ÇÕ´Ï´Ù.
obj.conf ¹× magnus.conf ÆÄÀÏ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Sun ONE Web Server 6.1 Administrator's Configuration File Reference¿Í Sun One Web Server 6.1 NSAPI Programmer's Guide¸¦ ÂüÁ¶ÇϽʽÿÀ.
¿¹¸¦ µé¾î Àüü ¼¹ö ¶Ç´Â ƯÁ¤ °¡»ó ¼¹ö Ŭ·¡½º°¡ ¿ÀÁ÷ Á¤Àû ÄÁÅÙÃ÷¸¸ Á¦°øÇÏ´Â µîÀÇ ÀϺΠ°æ¿ì Java¸¦ Àü¿ªÀûÀ¸·Î ¶Ç´Â ÇØ´ç Ŭ·¡½º¿¡ ´ëÇØ »ç¿ëÇÏÁö ¾Êµµ·Ï ÇÏ´Â °ÍÀÌ ÁÁÀ» ¶§°¡ ÀÖ½À´Ï´Ù.
Java »ç¿ëÀ» ¼³Á¤ ¶Ç´Â ÇØÁ¦ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- Enable/Disable Servelets/JSP¸¦ ´©¸¨´Ï´Ù.
Enable/Disable Servlets/JSP ÆäÀÌÁö
- Java¸¦ Àü¿ªÀûÀ¸·Î »ç¿ë ¼³Á¤ ¶Ç´Â ÇØÁ¦ÇÏ·Á¸é Enable/Disable Java Globally¸¦ ¼±ÅÃÇÕ´Ï´Ù.
¶Ç´Â
ƯÁ¤ °¡»ó ¼¹ö¿¡ ´ëÇØ Java¸¦ »ç¿ë ¼³Á¤ ¶Ç´Â ÇØÁ¦ÇÏ·Á¸é ÇØ´ç °¡»ó ¼¹ö Ŭ·¡½ºÀÇ Enable/Disable Java ¼±ÅöõÀ» ¼±Åà ¶Ç´Â ÇØÁ¦ÇÕ´Ï´Ù.
- OK¸¦ ´©¸¨´Ï´Ù.
JVM ¼³Á¤ ±¸¼ºSun ONE Web Server 6.1Àº ÀÌÀü ¹öÀü°ú ´Þ¸® ´õ ÀÌ»ó µ¶¸³Çü JRE(Java Runtime Environment)¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å ¼¹ö¸¦ »ç¿ëÇÏ·Á¸é JDK 1.4.1 ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¼¹ö¸¦ ¼³Ä¡ÇÒ ¶§ ±âº» JDK ¿É¼ÇÀ» ¼±ÅÃÇϸé JDK(Java Development Kit) ¹öÀü 1.4.1_03ÀÌ <server-root>/bin/https/jdk µð·ºÅ丮¿¡ ¼³Ä¡µË´Ï´Ù.
¼¹ö ÀνºÅϽº¿ë JVM(Java Virtual Machine) ¼³Á¤À» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¼³Á¤¿¡´Â Java ȨÀÇ À§Ä¡, ÄÄÆÄÀÏ·¯ ¿É¼Ç, µð¹ö±ë ¿É¼Ç ¹× ÇÁ·ÎÆÄÀÏ·¯ Á¤º¸ µîÀÌ Æ÷ÇԵ˴ϴÙ. ÀÌ ¼³Á¤À» ±¸¼ºÇÏ´Â ÀÌÀ¯ Áß Çϳª´Â ¼º´ÉÀ» Çâ»ó½ÃÅ°±â À§ÇÑ °ÍÀÔ´Ï´Ù. ¼º´É¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Sun ONE Web Server 6.1 Performance Tuning, Sizing, and Scaling Guide¸¦ ÂüÁ¶ÇϽʽÿÀ.
ÀÏ¹Ý ¼³Á¤ ±¸¼º
JDKÀÇ À§Ä¡¸¦ º¯°æÇÏ°í µð¹ö±ë ¿É¼ÇÀ» ÁöÁ¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- JVM GeneralÀ» ´©¸¨´Ï´Ù.
JVM General ÀÎÅÍÆäÀ̽º
- Java HomeÀ» ¼³Á¤ÇÕ´Ï´Ù.
Java HomeÀº JDK(Java Developer's Kit)°¡ ¼³Ä¡µÈ À§Ä¡ÀÇ °æ·ÎÀÔ´Ï´Ù. Sun ONE Web Server´Â Sun JDK 1.4.1_03À» Áö¿øÇÕ´Ï´Ù.
- µð¹ö±ëÀ» »ç¿ëÇÒ °ÍÀÎÁöÀÇ ¿©ºÎ¿Í µð¹ö±ë ¿É¼ÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
µð¹ö±ë ¿É¼Ç ¸ñ·ÏÀº ´ÙÀ½¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. http://java.sun.com/products/jpda/doc/conninv.html#Invocation
- OK¸¦ ´©¸¨´Ï´Ù.
°æ·Î ¼³Á¤ ±¸¼º
¾î¶² ÀÌÀ¯·Î ÀÎÇÏ¿© JVM °æ·Î ¼³Á¤À» ±¸¼ºÇØ¾ß ÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î XML Parser Ŭ·¡½º µîÀÇ ½Ã½ºÅÛ Å¬·¡½º¸¦ ´ëüÇϱâ À§ÇÏ¿© ½Ã½ºÅÛÀÇ classpath¿ë Á¢¹Ì»ç¸¦ ¼±ÅÃÇϰųª ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ÀÇ È¯°æ º¯¼ö ºÎÀÛ¿ëÀ» ¹æÁöÇϱâ À§ÇÏ¿© ȯ°æ classpath¸¦ ¹«½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
Administration ÀÎÅÍÆäÀ̽º¿¡¼ JVMÀÇ °æ·Î ¼³Á¤À» ±¸¼ºÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- JVM Path Settings¸¦ ´©¸¨´Ï´Ù.
- ½Ã½ºÅÛÀÇ classpath¿¡ ´ëÇÑ Á¢¹Ì»ç¸¦ ¼±ÅÃÇÕ´Ï´Ù.
- ȯ°æ Ŭ·¡½º °æ·Î¸¦ ¹«½ÃÇÒÁö ¿©ºÎ¸¦ ¼±ÅÃÇÕ´Ï´Ù.
classpath¸¦ ¹«½ÃÇÏÁö ¾ÊÀ¸¸é CLASSPATH ȯ°æ º¯¼ö°¡ ÀÐÇô¼ Sun ONE Web Server classpath¿¡ Ãß°¡µË´Ï´Ù. CLASSPATH ȯ°æ º¯¼ö´Â classpathsuffix µÚÀÎ Á¦ÀÏ ³¡¿¡ Ãß°¡µË´Ï´Ù.
°³¹ß ȯ°æÀ» À§Çؼ´Â Ŭ·¡½º °æ·Î¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. »ý¼º ȯ°æÀ» À§Çؼ´Â ȯ°æ º¯¼ö ºÎÀÛ¿ëÀ» ¹æÁöÇϱâ À§ÇØ ÀÌ Å¬·¡½º °æ·Î¸¦ ¹«½ÃÇØ¾ß ÇÕ´Ï´Ù.
- ¿ø½Ã ¶óÀ̺귯¸® °æ·Î Á¢µÎ»ç ¹× Á¢¹Ì»ç¸¦ ¼³Á¤ÇÕ´Ï´Ù.
¿ø½Ã ¶óÀ̺귯¸® °æ·Î´Â ¿ø½Ã °øÀ¯ ¶óÀ̺귯¸®¿¡ ´ëÇÑ Web Server ¼³Ä¡ »ó´ë °æ·Î, Ç¥ÁØ JRE ¿ø½Ã ¶óÀ̺귯¸® °æ·Î, ½© ȯ°æ ¼³Á¤(UNIXÀÇ °æ¿ì LD_LIBRARY_PATH) ¹× profiler ¿ä¼Ò¿¡ ÁöÁ¤µÈ ¸ðµç °æ·ÎÀÇ ÀÚµ¿ ±¸¼ºµÈ ¿¬¼âÀÔ´Ï´Ù. ÀÌ°ÍÀÌ ÇÕ¼ºµÇ¸é ¼¹ö ±¸¼º¿¡ ¸í½ÃÀûÀ¸·Î ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù.
- OK¸¦ ´©¸¨´Ï´Ù.
JVM ¿É¼Ç ±¸¼º
Administration ÀÎÅÍÆäÀ̽º¿¡¼ JVM ¸í·ÉÁÙ ¿É¼ÇÀ» ¼³Á¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- JVM Options¸¦ ´©¸£°í ÇÊ¿äÇÑ »çÇ×À» º¯°æÇÕ´Ï´Ù.
ƯÁ¤ JVM ¿É¼Ç¿¡ ´ëÇÑ ³»¿ëÀº ´ÙÀ½À» ÂüÁ¶ÇϽʽÿÀ.
http://java.sun.com/docs/hotspot/VMOptions.html
- OK¸¦ ´©¸¨´Ï´Ù.
JVM ÇÁ·ÎÆÄÀÏ·¯ ±¸¼º
ÇÁ·ÎÆÄÀÏ·¯¸¦ »ç¿ëÇÏ¿© Sun ONE Web Server¿¡¼ ¿ø°Ý ÇÁ·ÎÆÄÀϸµÀ» ¼öÇàÇÏ¸é ¼¹öÃø ¼º´ÉÀÇ º´¸ñ Çö»óÀ» ãÀ» ¼ö ÀÖ½À´Ï´Ù.
Administration ÀÎÅÍÆäÀ̽º¿¡¼ JVM ÇÁ·Î ÆÄÀÏ·¯¸¦ ±¸¼ºÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
ÇÁ·ÎÆÄÀÏ·¯¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Sun ONE Web Server 6.1 Programmer's Guide¸¦ ÂüÁ¶ÇϽʽÿÀ.
J2EE À̸§ ÁöÁ¤ ¼ºñ½º ¹× ¸®¼Ò½º ¼³¸íÀ¥ ÀÀ¿ë ÇÁ·Î±×·¥Àº ¸®¼Ò½º °ü¸®ÀÚ, µ¥ÀÌÅÍ ¼Ò½º(SQL µ¥ÀÌÅͼҽº µî), ÀüÀÚ ¸ÞÀÏ ¼¼¼Ç ¹× URL ¿¬°á ÆÑÅ丮 µî ´Ù¾çÇÑ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. J2EE Ç÷§ÆûÀº JNDI(Java Naming and Directory Interface) ¼ºñ½º¸¦ ÅëÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÀÌ·¯ÇÑ ¸®¼Ò½º¸¦ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù.
Sun ONE Web Server¿¡¼´Â ´ÙÀ½ÀÇ J2EE ¸®¼Ò½º¸¦ ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
JDBC µ¥ÀÌÅͼҽº
JDBC µ¥ÀÌÅͼҽº´Â Sun ONE Web Server¸¦ ÀÌ¿ëÇÏ¿© ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ´Â J2EE ¸®¼Ò½ºÀÔ´Ï´Ù.
JDBC API´Â °ü·Ã µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ°úÀÇ ¿¬°áÀ» À§ÇÑ APIÀÔ´Ï´Ù. JDBC API´Â µÎ ºÎºÐÀ¸·Î ÀÌ·ç¾îÁý´Ï´Ù.
JDBC µ¥ÀÌÅͼҽº °³Ã¼´Â Java ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼ µ¥ÀÌÅÍ ¼Ò½º¸¦ ±¸ÇöÇÏ´Â °ÍÀÔ´Ï´Ù. °£´ÜÈ÷ ¸»ÇÏ¸é µ¥ÀÌÅͼҽº´Â µ¥ÀÌÅ͸¦ ÀúÀåÇϱ⠽±°Ô ÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ´Â ´ë±Ô¸ð ±â¾÷¿ëÀÇ º¹ÀâÇÑ µ¥ÀÌÅͺ£À̽ºÃ³·³ °íÂ÷¿øÀûÀÎ °ÍÀÏ ¼ö ÀÖÀ¸¸ç Çà°ú ¿·Î ÀÌ·ç¾îÁø ÆÄÀÏ°ú °°ÀÌ °£´ÜÇÑ °ÍÀÏ ¼öµµ ÀÖ½À´Ï´Ù. JDBC µ¥ÀÌÅͼҽº´Â Sun ONE Web Server¸¦ ÅëÇÏ¿© ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ´Â J2EE ¸®¼Ò½ºÀÔ´Ï´Ù.
JDBC API´Â ÀÏ·ÃÀÇ Java¿ë Ŭ·¡½º¸¦ Á¦°øÇϸç, ¿©±â¿¡´Â ´Ù¾çÇÑ °ü°èÇü µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¾×¼¼½º°¡ µ¿ÀÏÇϵµ·Ï Çϴ ǥÁØ SQL µ¥ÀÌÅͺ£À̽º ¾×¼¼½º ÀÎÅÍÆäÀ̽º°¡ Æ÷ÇԵ˴ϴÙ.
JDBC¸¦ »ç¿ëÇϸé SQL¹®À» °ÅÀÇ ¸ðµç µ¥ÀÌÅͺ£À̽º °ü¸® ½Ã½ºÅÛ(DBMS)À¸·Î º¸³¾ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ °ü°èÇü ¹× °³Ã¼Çü DBMS ¸ðµÎ¿¡ ´ëÇÑ ÀÎÅÍÆäÀ̽º·Î »ç¿ëµË´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº JDBC ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
JDBC ¿¬°á Ç®
JDBC ¿¬°á Ç®Àº µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÇ´Â JDBC ±×·ìÀÇ À̸§ÀÔ´Ï´Ù. ÀÌ ¿¬°áÀº Sun ONE Web Server¸¦ ½ÃÀÛÇÒ ¶§ Ç®¿¡¼ ¿¬°á¿¡ ´ëÇÑ ¿äûÀ» óÀ½ ¼öÇàÇÏ¸é ¸¸µé¾îÁý´Ï´Ù.
JDBC ¿¬°á Ç®Àº ¿¬°á Ç®À» ¸¸µå´Â µ¥ »ç¿ëÇÏ´Â µî·Ï Á¤º¸¸¦ Á¤ÀÇÇÕ´Ï´Ù. °¢ ¿¬°á Ç®Àº JDBC µå¶óÀ̹ö¸¦ »ç¿ëÇÏ¿© ¼¹ö°¡ ½ÃÀÛÇÒ ¶§ ½ÇÁ¦ µ¥ÀÌÅͺ£À̽º·ÎÀÇ ¿¬°áÀ» ¼³Á¤ÇÕ´Ï´Ù.
JDBC ±â¹Ý ÀÀ¿ë ÇÁ·Î±×·¥À̳ª ¸®¼Ò½º´Â Ç®¿¡¼ ¿¬°áÀ» °¡Á®¿Í »ç¿ëÇϸç, ¿¬°áÀÌ ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é ¿¬°áÀ» Á¾·áÇÏ°í ¿¬°á Ç®·Î µÇµ¹¸³´Ï´Ù. µÑ ÀÌ»óÀÇ JDBC ¸®¼Ò½º°¡ µ¿ÀÏÇÑ Ç® Á¤ÀǸ¦ °¡¸®Å°´Â °æ¿ì¿¡´Â ·±Å¸ÀÓ¿¡¼ ¿¬°áÀÇ µ¿ÀÏÇÑ Ç®À» »ç¿ëÇÏ°Ô µË´Ï´Ù.
»õ JDBC ¿¬°á Ç®À» ¸¸µå´Â ¹æ¹ýÀº »õ JDBC ¿¬°á Ç® »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
Java ÀüÀÚ ¸ÞÀÏ ¼¼¼Ç
JMS ´ë»ó(destination)Àº Sun ONE Web Server¸¦ ÅëÇÏ¿© ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ´Â J2EE ¸®¼Ò½ºÀÔ´Ï´Ù.
¸¹Àº ÀÎÅÍ³Ý ÀÀ¿ë ÇÁ·Î±×·¥¿¡´Â ÀüÀÚ ¸ÞÀÏ ÅëÁö¸¦ º¸³¾ ¼ö ÀÖ´Â ±â´ÉÀÌ ÇÊ¿äÇϹǷΠJ2EE Ç÷§Æû¿¡ JavaMail API¿Í ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ ÀÎÅÍ³Ý ÀüÀÚ ¸ÞÀÏÀ» º¸³¾ ¼ö ÀÖ´Â JavaMail ¼ºñ½º Á¦°øÀÚ°¡ ÇÔ²² Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. JavaMail API´Â µÎ ºÎºÐÀ¸·Î ÀÌ·ç¾îÁý´Ï´Ù.
Java Mail SessionÀº Sun ONE Web Server¸¦ ÅëÇÏ¿© ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ´Â J2EE ¸®¼Ò½ºÀÔ´Ï´Ù.
ÁÖ
Sun ONE Web Server¿¡´Â Java Mail Sessions¸¦ ¸¸µé ¼ö ÀÖ´Â Administration Server ÀÎÅÍÆäÀ̽º°¡ ¾ø½À´Ï´Ù. ÀÌ ÀÛ¾÷À» ÇÏ·Á¸é ¸í·ÉÁÙ ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÕ´Ï´Ù. ¸í·ÉÁÙ À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© ÀüÀÚ ¸ÞÀÏ ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº ÀüÀÚ ¸ÞÀÏ ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º´Â ·ÎÄà JNDI ÀúÀå¼Ò¿¡ ¾×¼¼½ºÇÕ´Ï´Ù. »ç¿ëÀÚ Á¤ÀÇ ¼¹ö Àüü ¸®¼Ò½º °³Ã¼ ÆÑÅ丮¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀº server.xml¿¡ Á¤ÀÇµÈ customresource ¿ä¼Ò¿¡ Á¦°øµË´Ï´Ù. ÀÌ·¯ÇÑ °³Ã¼ ÆÑÅ丮´Â javax.naming.spi.ObjectFactory ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÕ´Ï´Ù. ÀÌ ¿ä¼Ò´Â JNDI À̸§(±âŸ Sun ONE Web Server ¸®¼Ò½º µîÀÇ jndiname ÇÏÀ§ ¿ä¼Ò)ÀÌ ¼¹ö Àüü À̸§ °ø°£, ÇØ´ç À¯Çü, ¸®¼Ò½º ÆÑÅ丮 Ŭ·¡½ºÀÇ À̸§ ¹× À̸¦ ÀνºÅϽºÈÇϴ ǥÁØ µî·Ï Á¤º¸ ¼¼Æ®¿¡¼ »ç¿ëµÇµµ·Ï ¿¬°áÇÕ´Ï´Ù.
¸®¼Ò½º ÂüÁ¶ÀÇ È¯°æ ÂüÁ¶°¡ server.xmlÀÇ customresource ¹× externaljndiresource ű׸¦ »ç¿ëÇÏ¿© Á¤ÀÇÇÑ ¼¹ö Àüü ¸®¼Ò½º ±¸¼º¿¡ ¿¬°áµÇ¾î¾ß ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ µ¿Àû À籸ÇöÀÌ JNDI À̸§ ÁöÁ¤ ȯ°æÀÇ °æ¿ì ¹®Á¦°¡ µË´Ï´Ù. Sun ONE Web Server´Â ¸ðµç ÀÀ¿ë ÇÁ·Î±×·¥ ƯÁ¤ ÂüÁ¶¸¦ ÇØÁ¦ÇÏ°í ¸ðµç »õ ÂüÁ¶¸¦ »õ·Î ¼³Ä¡µÈ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ À̸§ ÁöÁ¤ ÄÁÅؽºÆ®·Î ´Ù½Ã ¹ÙÀεåÇÕ´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
¿ÜºÎ JNDI ¸®¼Ò½º
Sun ONE Web Server¿¡¼ ½ÇÇàµÇ´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¿ÜºÎ JNDI ÀúÀå¼Ò¿¡ ÀúÀåµÈ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇØ¾ß ÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÀÏ¹Ý Java °³Ã¼´Â Java ½ºÅ°¸¶¿¡ µû¶ó LDAP ¼¹ö¿¡ ÀúÀåµÉ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ »ç¿ëÇÏ¸é ·ÎÄà JNDI ÀúÀå¼Ò¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖÀ¸³ª, ¿ÜºÎ JNDI ÀúÀå¼Ò¿¡ ¾×¼¼½ºÇÏ·Á¸é ¹Ýµå½Ã ¿ÜºÎ JNDI ¸®¼Ò½º¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿ÜºÎ JNDI ÆÑÅ丮´Â ¹Ýµå½Ã javax.naming.spi.InitialContextFactory¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù.
¿ÜºÎ JNDI ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº ¿ÜºÎ JNDI ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
JNDI(Java Naming and Directory Interface) ¼³¸í¿©±â¿¡¼´Â ¼·Î ´Ù¸¥ À̸§ ÁöÁ¤ ¹× µð·ºÅ丮 ¼ºñ½º¿¡ ¾×¼¼½ºÇÏ´Â µ¥ »ç¿ëÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ÇÁ·Î±×·¡¹Ö ÀÎÅÍÆäÀ̽º(API)ÀÎ JNDI(Java Naming and Directory Interface)¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. J2EE ±¸¼º ¿ä¼Ò´Â JNDI Á¶È¸ ¸Þ¼Òµå¸¦ ½ÃÀÛÇÏ¿© °³Ã¼ÀÇ À§Ä¡¸¦ ã½À´Ï´Ù.
¿©±â¿¡¼´Â ´ÙÀ½ Ç׸ñ¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
J2EE À̸§ ÁöÁ¤ ¼ºñ½º
JNDI À̸§Àº »ç¿ëÀÚ¿¡°Ô Àͼ÷ÇÑ °³Ã¼ À̸§ÀÔ´Ï´Ù. ÀÌ À̸§Àº J2EE ¼¹ö°¡ Á¦°øÇÏ´Â À̸§ ÁöÁ¤ ¹× µð·ºÅ丮 ¼ºñ½º¿¡ ÀÇÇÏ¿© ÇØ´ç °³Ã¼¿Í ¹ÙÀεåµË´Ï´Ù. J2EE ±¸¼º ¿ä¼Ò´Â JNDI API¸¦ ÅëÇÏ¿© ÀÌ ¼ºñ½º¿¡ ¾×¼¼½ºÇϹǷΠ»ç¿ëÀÚ´Â º¸Åë JNDI À̸§À¸·Î »ç¿ëÀÚ¿¡°Ô Àͼ÷ÇÑ °³Ã¼ À̸§À» ÂüÁ¶ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î Oracle µ¥ÀÌÅͺ£À̽ºÀÇ JNDI À̸§Àº jdbc/Oracle·Î ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ µ¥ÀÌÅͺ£À̽º°¡ ½ÃÀ۵Ǹé Sun ONE Web Server´Â ±¸¼º ÆÄÀÏ¿¡¼ ÇØ´ç Á¤º¸¸¦ Àаí JNDI µ¥ÀÌÅͺ£À̽º À̸§À» ÀÚµ¿À¸·Î À̸§ °ø°£¿¡ Ãß°¡ÇÕ´Ï´Ù.
ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ À̸§ ÁöÁ¤ ȯ°æÀº ±¸Çö ¹× ¾î¼Àºí¸® °úÁ¤¿¡¼ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ºñÁî´Ï½º ·ÎÁ÷À» »ç¿ëÀÚ Á¤ÀÇ ÇÒ ¼ö ÀÖ´Â ±â¹ýÀÔ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ È¯°æÀ» »ç¿ëÇϸé ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ¼Ò½º Äڵ忡 ¾×¼¼½ºÇϰųª À̸¦ º¯°æÇÏÁö ¾Ê°í ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò¸¦ »ç¿ëÀÚ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù.
J2EE ÄÁÅ×À̳ʴ À¥ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ È¯°æÀ» ±¸ÇöÇÏ°í À̸¦ JNDI À̸§ ÁöÁ¤ ÄÁÅؽºÆ®·Î ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò ÀÎÅÍÆäÀ̽º¿¡ Á¦°øÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ È¯°æÀº ´ÙÀ½°ú °°ÀÌ »ç¿ëµË´Ï´Ù.
- À¥ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ºñÁî´Ï½º ¸Þ¼Òµå´Â JNDI ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© ȯ°æ¿¡ ¾×¼¼½ºÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò Á¦°øÀÚ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ ·±Å¸ÀÓ¿¡ ÇØ´ç ȯ°æ¿¡¼ Á¦°øµÉ °ÍÀ¸·Î ±â´ëÇÏ´Â ¸ðµç ȯ°æ ¿ä¼Ò¸¦ ±¸Çö ±â¼úÀÚ¿¡ ¼±¾ðÇÕ´Ï´Ù.
- ÄÁÅ×À̳ʴ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò ȯ°æÀ» ÀúÀåÇÏ´Â JNDI À̸§ ÁöÁ¤ ÄÁÅؽºÆ®¸¦ ±¸ÇöÇÑ °ÍÀÔ´Ï´Ù. ÄÁÅ×À̳ʴ ¶ÇÇÑ ±¸ÇöÀÚ°¡ °¢ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ È¯°æÀ» ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ´Â µµ±¸¸¦ Á¦°øÇÕ´Ï´Ù.
- ±¸ÇöÀÚ´Â ÄÁÅ×À̳ʰ¡ Á¦°øÇÏ´Â µµ±¸¸¦ »ç¿ëÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ±¸Çö ±â¼úÀÚ¿¡ ¼±¾ðµÈ ȯ°æ Ç׸ñÀ» ÃʱâÈÇÕ´Ï´Ù. ±¸ÇöÀڴ ȯ°æ Ç׸ñÀÇ °ªÀ» ¼³Á¤ ¹× ¼öÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ÄÁÅ×À̳ʴ ·±Å¸ÀÓ¿¡¼ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò ÀνºÅϽº°¡ »ç¿ëÇÒ ¼ö Àִ ȯ°æ À̸§ ÁöÁ¤ ÄÁÅؽºÆ®¸¦ ¸¸µì´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ÀνºÅϽº´Â JNDI ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© ȯ°æ Ç׸ñÀÇ °ªÀ» ±¸ÇÕ´Ï´Ù.
°¢ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò´Â ÀÚüÀÇ È¯°æ Ç׸ñ ¼¼Æ®¸¦ Á¤ÀÇÇÕ´Ï´Ù. µ¿ÀÏÇÑ ÄÁÅ×À̳ʿ¡ ÀÖ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼ÒÀÇ ¸ðµç ÀνºÅϽº´Â µ¿ÀÏÇÑ È¯°æ Ç׸ñÀ» °øÀ¯ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò ÀνºÅϽº´Â ·±Å¸ÀÓ¿¡ ȯ°æÀ» ¼öÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
À̸§ ÁöÁ¤ ÂüÁ¶ ¹× ¹ÙÀεå Á¤º¸
¸®¼Ò½º ÂüÁ¶´Â ±¸Çö ±â¼úÀÚ¿¡ ÀÖ´Â ¿ä¼Ò·Î ±¸¼º ¿ä¼ÒÀÇ ¸®¼Ò½º¿ëÀ¸·Î ÄÚµåÈµÈ À̸§À» ±¸ºÐÇÕ´Ï´Ù. ´õ Á¤È®È÷ ¸»Çϸé ÇØ´ç ¸®¼Ò½º¸¦ À§ÇÑ ÄÚµåÈµÈ À̸§ ÂüÁ¶ ¿¬°á ÆÑÅ丮ÀÔ´Ï´Ù. ´ÙÀ½ ºÎºÐ¿¡¼ Á¦°øµÈ ¿¹Á¦¿¡¼ ¸®¼Ò½º ÂüÁ¶ À̸§Àº jdbc/SavingsAccountDBÀÔ´Ï´Ù.
¸®¼Ò½ºÀÇ JNDI À̸§°ú ¸®¼Ò½º ÂüÁ¶ÀÇ À̸§Àº µ¿ÀÏÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ·¯ÇÑ À̸§ ÁöÁ¤ ¹æ¹ýÀ» »ç¿ëÇÏ·Á¸é ±¸Çö Àü¿¡ À̸§ µÎ °³¸¦ ¸ÅÇÎÇØ¾ß Çϸç, ¶ÇÇÑ ¸®¼Ò½º¿¡¼ ±¸¼º ¿ä¼Ò¸¦ ºÐ¸®ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ºÐ¸®·Î ÀÎÇÏ¿© ÀÌÈÄ¿¡ ±¸¼º ¿ä¼Ò°¡ ´Ù¸¥ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇØ¾ß ÇÏ´Â °æ¿ì ÄÚµå ³»ÀÇ À̸§À» º¯°æÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ÀÌ·¯ÇÑ À¯¿¬¼ºÀ¸·Î ÀÎÇÏ¿© ¹Ì¸® Á¸ÀçÇÏ´Â ±¸¼º ¿ä¼Ò¿¡¼ ½±°Ô J2EE ÀÀ¿ë ÇÁ·Î±×·¥À» ¾î»ùºíÇÒ ¼ö ÀÖ½À´Ï´Ù.
Sun ONE Web Server°¡ »ç¿ëÇÏ´Â J2EE ¸®¼Ò½º¿¡ ´ëÇÑ ±ÇÀå JNDI Á¶È¸¿Í ÇØ´ç ¿¬°á ÂüÁ¶´Â ´ÙÀ½ Ç¥¿Í °°½À´Ï´Ù.
J2EE Ç¥ÁØ ±¸Çö ±â¼úÀÚ ³»ÀÇ À̸§ ÁöÁ¤ ÂüÁ¶
À̸§ ÁöÁ¤ ÂüÁ¶´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÁöÁ¤µÈ À̸§ ÁöÁ¤ ÄÁÅؽºÆ®¿¡¼ °³Ã¼¸¦ Á¶È¸ÇÒ ¶§ »ç¿ëÇÏ´Â ¹®ÀÚ¿ÀÔ´Ï´Ù. °¢ À¥ ÀÀ¿ë ÇÁ·Î±×·¥¿¡´Â À̸§ ÁöÁ¤ ÄÁÅؽºÆ®°¡ ÀÖÀ¸¸ç ÂüÁ¶´Â Ç¥ÁØ ±¸¼º ¿ä¼Ò ±¸Çö ±â¼úÀÚ ³»¿¡ ±¸¼ºµË´Ï´Ù. ¿©±â¿¡¼´Â Sun ONE Web Server¿¡¼ »ç¿ëµÇ´Â Ç¥ÁØ ±¸Çö ±â¼úÀÚ ±â´É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. ¿©±â¿¡¼´Â ´ÙÀ½ Ç׸ñ¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
ÀÀ¿ë ÇÁ·Î±×·¥ ȯ°æ Ç׸ñ
ȯ°æ Ç׸ñÀº <env-entry>¸¦ »ç¿ëÇÏ¿© Á¤ÀÇÇϸç J2EE À¥ ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ±¸Çö ½Ã°£ ¸Å°³ º¯¼ö¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. Âü°í·Î ¼ºê¸´ ÄÁÅؽºÆ® ÃʱâÈ ¸Å°³ º¯¼ö´Â <context-param>À» »ç¿ëÇÏ¿© Á¤ÀÇÇÒ ¼ö ÀÖÀ¸³ª, <env-entry>´Â ÀÀ¿ë ÇÁ·Î±×·¥ ±¸ÇöÀÚ°¡ À̸§, À¯Çü ¹× °ªÀ» ±¸Ã¼ÀûÀ¸·Î ÁöÁ¤ÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥ ¸Å°Ô º¯¼ö¸¦ ±¸¼ºÇÒ ¼ö ÀÖÀ¸¹Ç·Î ´õ ¸¹ÀÌ »ç¿ëµË´Ï´Ù.
J2EE Ç¥ÁØ °³¹ß ±â¼úÀÚ¿¡ ÁöÁ¤µÈ <env-entry>ÀÇ ±¸¹®Àº ´ÙÀ½ ¿¹Á¦¿¡ º¸ÀÌ´Â °Í°ú °°½À´Ï´Ù.
<env-entry>
<description> Send pincode by mail </description>
<env-entry-name> mailPincode </env-entry-name>
<env-entry-value> false </env-entry-value>
<env-entry-type> java.lang.Boolean </env-entry-type>
</env-entry>
<env-entry-type> ű״ ÇØ´ç ¿£Æ®¸®¿ëÀÇ À¯È¿ÇÑ Å¬·¡½º À̸§À» ÁöÁ¤ÇÕ´Ï´Ù. ¼ºê¸´ ¶Ç´Â JSP¿¡¼ JNDI¸¦ »ç¿ëÇÏ¿© <env-entry>¸¦ Á¶È¸ÇÏ´Â ÄÚµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
Context initContext = new InitialContext();
Boolean mailPincode = (Boolean)
initContext.lookup("java:comp/env/mailPincode");
// one could use relative names into the sub-context
Context envContext = initContext.lookup("java:comp/env");
Boolean mailPincode = (Boolean)
envContext.lookup("mailPincode");
¸®¼Ò½º ÂüÁ¶
ÆÑÅ丮´Â ÇÊ¿äÇÒ ¶§ ´Ù¸¥ °³Ã¼¸¦ ¸¸µå´Â °³Ã¼ÀÔ´Ï´Ù. ¸®¼Ò½º ÆÑÅ丮´Â µ¥ÀÌÅͺ£À̽º ¿¬°áÀ̳ª ¸Þ½ÃÁö ¼ºñ½º ¿¬°á µîÀÇ ¸®¼Ò½º °³Ã¼¸¦ ¸¸µì´Ï´Ù. ÀÌµé °³Ã¼´Â Ç¥ÁØ ±¸Çö ±â¼úÀÚ¿¡ ÀÖ´Â <resource-ref>¸¦ »ç¿ëÇÏ¿© ±¸¼ºÇÕ´Ï´Ù.
ÆÑÅ丮ÀÇ »ç¿ë ¿¹´Â ´ÙÀ½°ú °°½À´Ï´Ù.
¿¹
javax.sql.DataSource À¯ÇüÀÇ °³Ã¼¸¦ ¸¸µå´Â JDBC ¿¬°á ÆÑÅ丮·ÎÀÇ ÂüÁ¶ ¼±¾ð:
<resource-ref>
<description> Primary database </description>
<res-ref-name> jdbc/primaryDB </res-ref-name>
<res-type> javax.sql.DataSource </res-type>
<res-auth> Container </res-auth>
</resource-ref>
<res-type>Àº ÇØ´ç ¸®¼Ò½º ÆÑÅ丮ÀÇ À¯È¿ÇÑ Å¬·¡½º À̸§ÀÔ´Ï´Ù. <res-auth> º¯¼ö´Â Container ¶Ç´Â Application¿¡ °ªÀ¸·Î ÁöÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù.
Container°¡ ÁöÁ¤µÇ´Â °æ¿ì À¥ ÄÁÅ×À̳ʰ¡ ¸®¼Ò½º ÆÑÅ丮¸¦ JNDI Á¶È¸ ·¹Áö½ºÆ®¿¡ ¹ÙÀεåÇϱâ Àü¿¡ ÀÎÁõÀ» ó¸®ÇÕ´Ï´Ù. ApplicationÀÌ ÁöÁ¤µÇ´Â °æ¿ì ¼ºê¸´Àº ¹Ýµå½Ã ÀÎÁõÀ» ÇÁ·Î±×·¥ÀûÀ¸·Î ó¸®ÇØ¾ß ÇÕ´Ï´Ù. ¼·Î ´Ù¸¥ ¸®¼Ò½º ÆÑÅ丮°¡ ´ÙÀ½°ú °°ÀÌ ¸®¼Ò½º À¯ÇüÀ» ±â¼úÇÏ´Â º°µµÀÇ ÇÏÀ§ ÄÁÅؽºÆ®¿¡¼ Á¶È¸µË´Ï´Ù.
ÀÎÁõÀ» ó¸®ÇÏ´Â ÄÁÅ×À̳ʰ¡ ÀÖ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò¿¡¼ JDBC ¿¬°áÀ» °¡Á®¿À´Â ÄÚµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
InitialContext initContext = new InitialContext();
DataSource source =
(DataSource) initContext.lookup("java:comp/env/jdbc/primaryDB");
Connection conn = source.getConnection();
Âü°í·Î, ÀÌµé ¸®¼Ò½º ÂüÁ¶°¡ ÀÛµ¿ÇÏ·Á¸é ·±Å¸ÀÓ¿¡ res-ref-nameÀÌ ¹Ýµå½Ã À¯È¿ÇÑ ¸®¼Ò½º ÆÑÅ丮·Î ¸ÅÇεǾî¾ß ÇÕ´Ï´Ù.
¸®¼Ò½º ȯ°æ ÂüÁ¶
¸®¼Ò½º ȯ°æ ÂüÁ¶´Â JNDI Á¶È¸¸¦ ÅëÇÏ¿© ¸®¼Ò½º¿¡ ¿¬°áµÇ¾î °ü¸®µÈ °³Ã¼¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. Ç¥ÁØ ±¸Çö ±â¼úÀÚ¿¡ Á¤ÀÇµÈ <resource-env-ref>´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¸®¼Ò½º ¿ä±¸ »çÇ×À» ¼±¾ðÇϵµ·Ï ÇÕ´Ï´Ù.
<resource-env-ref>¿Í <resource-ref> ¿ä¼ÒÀÇ °¡Àå Å« Â÷ÀÌÁ¡Àº ƯÁ¤ ¸®¼Ò½º ÀÎÁõ ¿ä±¸ »çÇ×ÀÌ ¾ø´Ù´Â Á¡À¸·Î ÀÌµé ¿ä¼Ò´Â ¸®¼Ò½º ÆÑÅ丮 ±â¼úÀÚÀÇ º¸Á¶°¡ ÇÊ¿äÇÕ´Ï´Ù.
¿¹
<resource-env-ref>
<description> My Topic </description>
<res-env-ref-name> jdbc/MyTopic </res-ref-name>
<res-env-ref-type> javax.jdbc.Topic </res-type>
</resource-env-ref>
JMS Topic °³Ã¼¿¡ ¾×¼¼½ºÇÏ´Â ÄÚµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
InitialContext initContext = new InitialContext();
javax.jms.Topic myTopic = (javax.jdbc.Topic) initContext.lookup("java:comp/env/jdbc/MyTopic");
Ãʱâ À̸§ ÁöÁ¤ ÄÁÅؽºÆ®
Sun ONE Web Server¿¡¼ÀÇ À̸§ ÁöÁ¤ Áö¿øÀº ÁÖ·Î J2EE 1.3À» ±â¹ÝÀ¸·Î ¸î °¡Áö ±â´ÉÀÌ Ãß°¡µÇ¾ú½À´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ InitialContext()¸¦ ÅëÇÏ¿© Ãʱâ ÄÁÅؽºÆ®¸¦ ¸¸µé¸é Sun ONE Web Server´Â À¥ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ À̸§ ÁöÁ¤ ȯ°æ¿¡ ´ëÇÑ ÇÚµé ¿ªÇÒÀ» ÇÏ´Â °³Ã¼¸¦ ¹ÝȯÇÕ´Ï´Ù. ÀÌ °³Ã¼´Â ´Ù½Ã java:comp/env À̸§ °ø°£¿ë ÇÏÀ§ ÄÁÅؽºÆ®¸¦ Á¦°øÇÕ´Ï´Ù. °¢ À¥ ÀÀ¿ë ÇÁ·Î±×·¥Àº ÀÚüÀÇ À̸§ °ø°£ÀÌ ÀÖ½À´Ï´Ù. Áï, java:comp/env À̸§ °ø°£Àº °¢ À¥ ÀÀ¿ë ÇÁ·Î±×·¥¸¶´Ù ÀÖÀ¸¸ç ÇϳªÀÇ À¥ ÀÀ¿ë ÇÁ·Î±×·¥ À̸§ °ø°£¿¡ ¹ÙÀεåµÈ °³Ã¼´Â ´Ù¸¥ À¥ ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ¹ÙÀεåµÈ °³Ã¼¿Í Ãæµ¹ÇÏÁö ¾Ê½À´Ï´Ù.
JNDI ¿¬°á ÆÑÅ丮
J2EE À¥ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ °æ¿ì web.xml ÆÄÀÏ¿¡ ÀÖ´Â ±¸Çö ±â¼úÀÚ´Â ÂüÁ¶¸¦ ÀÀ¿ë ÇÁ·Î±×·¥ ȯ°æ ¿£Æ®¸® ¶Ç´Â ¸®¼Ò½º °ü¸®ÀÚ(SQL Data Source µî) ¿¬°á ÆÑÅ丮·Î Á¤ÀÇÇÏ´Â ¿ëµµÀÇ ÀÚ¸® Ç¥½ÃÀÚÀÔ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥Àº J2EE ÄÁÅ×À̳ʿ¡¼ Á¦°øµÇ´Â JNDI InitialNamingContext¸¦ »ç¿ëÇÏ¿© ÀÌ·¯ÇÑ ÂüÁ¶¸¦ Á¶È¸ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °£´ÜÈ÷ ±¸Çö ±â¼úÀÚ¸¦ º¯°æÇÏ¿©, Áï ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¼Ò½º Äڵ带 ¾×¼¼½ºÇϰųª º¯°æÇÏÁö ¾Ê°í ÇØ´ç ÀÀ¿ë ÇÁ·Î±×·¥À» ´Ù¸¥ Web Server ȯ°æÀ¸·Î À̽ÄÇÒ ¼ö ÀÖ½À´Ï´Ù.
¿¬°á ÆÑÅ丮´Â ¿¬°á °³Ã¼¸¦ ¸¸µå´Â °³Ã¼·Î, J2EE ±¸¼º ¿ä¼Ò°¡ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿ë ¿¬°á ÆÑÅ丮´Â javax.sql.DataSource object·Î ÀÌ´Â java.sql.Connection °³Ã¼¸¦ ¸¸µì´Ï´Ù.
Sun ONE Web Server¿¡¼´Â ´ÙÀ½ ¸®¼Ò½º ¹× ¸®¼Ò½º ÆÑÅ丮¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â ¼ö´ÜÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸ðµç Sun ONE Web Server ¸®¼Ò½º ÆÑÅ丮´Â server.xmlÀÇ <resource></resources> ÅÂ±× ³»¿¡ ÁöÁ¤µÇ¸ç jndiname ¼Ó¼ºÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÑ JNDI À̸§À» °¡Áý´Ï´Ù(jndinameÀÌ ¾ø´Â jdbconnectionpoolÀº Á¦¿Ü). ÀÌ ¼Ó¼ºÀº ¼¹ö ÀüüÀÇ À̸§ °ø°£¿¡¼ ÆÑÅ丮¸¦ µî·ÏÇÏ´Â µ¥ »ç¿ëÇÕ´Ï´Ù. ±¸ÇöÀÚ´Â sun-web.xmlÀÇ resource-ref¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚ Á¤ÀÇ ÀÀ¿ë ÇÁ·Î±×·¥ ƯÁ¤ ¸®¼Ò½º ÂüÁ¶ À̸§(resource-ref ¶Ç´Â resource-env-ref ¿ä¼Ò¿¡ ¼±¾ð)À» ÀÌµé ¼¹ö ÀüüÀÇ ¸®¼Ò½º ÆÑÅ丮·Î ¸ÅÇÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé ÁÖ¾îÁø ÀÀ¿ë ÇÁ·Î±×·¥¿¡ »ç¿ëÇÒ JDBC ¸®¼Ò½º(¶ÇÇÑ ±âŸ ¸®¼Ò½º ÆÑÅ丮)¿¡ °ü·ÃµÈ ±¸Çö ½Ã°£À» °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º´Â ·ÎÄà JNDI ÀúÀå¼Ò·Î ¾×¼¼½ºÇÏ¸ç ¿ÜºÎ ¸®¼Ò½º´Â ¿ÜºÎ JNDI ÀúÀå¼Ò·Î ¾×¼¼½ºÇÕ´Ï´Ù. ÀÌ µÎ À¯ÇüÀÇ ¸®¼Ò½º ¸ðµÎ¿¡´Â »ç¿ëÀÚ ÁöÁ¤ ÆÑÅ丮 Ŭ·¡½º ¿ä¼Ò, JNDI À̸§ ¼Ó¼º µîÀÌ ÇÊ¿äÇÕ´Ï´Ù.
¿©±â¿¡¼´Â ´Ù¾çÇÑ J2EE ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ý°ú ÇØ´ç ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
Java ±â¹Ý ¸®¼Ò½º »ý¼º¿©±â¿¡¼´Â Administration ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© ´Ù¾çÇÑ J2EE ±â¹Ý ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
»õ JDBC ¿¬°á Ç® »ý¼º
´ÙÀ½°ú °°ÀÌ »õ JDBC ¿¬°á Ç®À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù.
Administration ÀÎÅÍÆäÀ̽º »ç¿ë
Administration ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© »õ JDBC ¿¬°á Ç®À» ¸¸µé·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- JDBC Connection Pools¸¦ ´©¸¨´Ï´Ù.
- New¸¦ ´©¸¨´Ï´Ù.
JDBC Connection Pools Interface ÆäÀÌÁö
- Database Vendor µå·Ó´Ù¿î ¸ñ·Ï¿¡¼ ¿¬°áÇÏ·Á´Â µ¥ÀÌÅͺ£À̽ºÀÇ À¯ÇüÀ» ¼±ÅÃÇÕ´Ï´Ù. ¸ñ·Ï¿¡ »ç¿ëÇÏ´Â DBMS°¡ ¾ø´Â °æ¿ì Other¸¦ ¼±ÅÃÇÕ´Ï´Ù.
New JDBC Connection Pools Interface ÆäÀÌÁö
- Next¸¦ ´©¸¨´Ï´Ù.
Add New JDBC Connection Pool ÆäÀÌÁö°¡ Ç¥½ÃµË´Ï´Ù.
- »õ ¿¬°á Ç®ÀÇ µî·Ï Á¤º¸¸¦ ÁöÁ¤ÇÏ°í OK¸¦ ´©¸¨´Ï´Ù.
¾Æ·¡ÀÇ ¸ñ·ÏÀº ¹Ýµå½Ã ÁöÁ¤ÇØ¾ß ÇÏ´Â ¿¬°á Ç® µî·ÏÁ¤º¸ÀÔ´Ï´Ù.
General
- Pool Name. »õ ¿¬°á Ç®ÀÇ À̸§À» ÀÔ·ÂÇÕ´Ï´Ù.
- DataSource Classname. µ¥ÀÌÅÍ ¼Ò½º¸¦ ±¸ÇöÇϴ Ŭ·¡½º À̸§À¸·Î °ø±ÞÀÚ°¡ ÁöÁ¤ÇÕ´Ï´Ù. New JDBC Connection Pool ÆäÀÌÁöÀÇ Database Vendor ¸ñ·Ï¿¡¼ Other¸¦ ¼±ÅÃÇÏ´Â °æ¿ì ¹Ýµå½Ã »ç¿ëÇÏ·Á´Â µ¥ÀÌÅÍ ¼Ò½ºÀÇ °ø±ÞÀÚ°¡ ÁöÁ¤ÇÑ Å¬·¡½º À̸§À» ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù. Âü°í·Î ÀÌ Å¬·¡½º´Â ¹Ýµå½Ã javax.sql.DataSource¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù.
Properties
Ç¥ÁØ ¹× »çÀ¯ JDBC ¿¬°á Ç® µî·Ï Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ µî·Ï Á¤º¸ Áß ¸¹Àº ºÎºÐÀº ¼±ÅÃÀÔ´Ï´Ù. ±âº»ÀûÀ¸·Î Ç¥ÁØ µî·Ï Á¤º¸ÀÇ À̸§Àº ¸ðµÎ ÀԷµǾî ÀÖ½À´Ï´Ù. ¾î¶² Ç¥ÁØ ¹× °ø±ÞÀÚ ÁöÁ¤ µî·Ï Á¤º¸°¡ ÇÊ¿äÇÑÁö °áÁ¤ÇÏ·Á¸é µ¥ÀÌÅͺ£À̽º °ø±ÞÀÚÀÇ ¼³¸í¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
Pool Settings
- Steady Pool Size. Ç®ÀÌ À¯ÁöÇØ¾ß ÇÏ´Â ÃÖ¼Ò ¿¬°á ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿äûÇÏ´Â ½º·¹µå¿¡ ¿¬°áÀÌ ºÎ¿©µÇ¸é ¿¬°áÀº Ç®¿¡¼ Á¦°ÅµÇ¹Ç·Î ÇöÀç Ç® Å©±â°¡ ÀÛ¾ÆÁý´Ï´Ù. °íÁ¤µÈ Ç® Å©±â´Â ¶ÇÇÑ ¼¹ö°¡ ½ÃÀÛÇÒ ¶§ Ç®¿¡ Ãß°¡µÇ´Â ¿¬°áÀÇ ¼ö¸¦ ³ªÅ¸³À´Ï´Ù.
- Max Pool Size. ÀÓÀÇ ½Ã°£¿¡ Ç®¿¡¼ Çã¿ëÇÒ ¼ö ÀÖ´Â ¿¬°áÀÇ ÃÖ´ë ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
- Pool Resize Quantity. Ç®ÀÌ °íÁ¤µÈ Ç® Å©±â±îÁö ÁÙ¾îµé¸é Ç®ÀÇ Å©±â°¡ ¹èÄ¡ ÀÛ¾÷À¸·Î Á¶Á¤µË´Ï´Ù. ÀÌ °ª¿¡ µû¶ó ¹èÄ¡ÀÇ Å©±â°¡ °áÁ¤µË´Ï´Ù. ÀÌ °ªÀ» ³Ê¹« Å©°Ô ÇÏ¸é ¿¬°á Àç»ç¿ëÀÌ Áö¿¬µÇ¸ç, ³Ê¹« ÀÛ°Ô Çϸé È¿À²¼ºÀÌ ¶³¾îÁý´Ï´Ù. Âü°í·Î Ç®ÀÇ ¿ë·®Àº ÇÑ ¹ø¿¡ ÇϳªÀÇ ¿¬°á ´ÜÀ§·Î Áõ°¡µÇ¹Ç·Î ÀÌ Çʵå´Â Ç® ¿ë·®ÀÇ Áõ°¡¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.
- Idle Timeout (secs). Ç®¿¡¼ ¿¬°áÀÌ À¯ÈÞ »óŸ¦ À¯ÁöÇÒ ¼ö ÀÖ´Â ÃÖ´ë ½Ã°£À» ÃÊ ´ÜÀ§·Î ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ½Ã°£ÀÌ °æ°úÇϸé Ç® ±¸Çö¿¡ µû¶ó ÇØ´ç ¿¬°áÀ» ²÷À» ¼ö ÀÖ½À´Ï´Ù.
- Max Wait Time (milli secs). È£ÃâÀÚ¿¡°Ô ¿¬°á Á¦ÇÑ ½Ã°£ÀÌ ÁöÁ¤µÉ ¶§±îÁö ´ë±âÇÏ´Â ½Ã°£À» ÁöÁ¤ÇÕ´Ï´Ù. ±âº» ´ë±â ½Ã°£Àº longÀ¸·Î, È£ÃâÀÚ´Â ¿À·£ ½Ã°£ µ¿¾È ´ë±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °ªÀ» 0À¸·Î ¼³Á¤Çϸé È£ÃâÀÚ´Â ¿¬°áÀÌ »ç¿ë °¡´ÉÇØÁú ¶§±îÁö Â÷´ÜµË´Ï´Ù.
Connection Validation
- Connection Validation Required. ÀÌ Çʵ带 ¼±ÅÃÇÏ¸é ¿¬°áÀÌ ÀÀ¿ë ÇÁ·Î±×·¥À¸·Î Àü´ÞµÇ±â Àü¿¡ È®ÀÎ °úÁ¤À» °ÅĨ´Ï´Ù. µû¶ó¼ ³×Æ®¿öÅ© °íÀå ¶Ç´Â µ¥ÀÌÅͺ£À̽º ¼¹ö Àå¾Ö·Î ÀÎÇÏ¿© µ¥ÀÌÅͺ£À̽º¸¦ »ç¿ëÇÒ ¼ö ¾ø´Â °æ¿ì ¼¹ö°¡ ÀÚµ¿À¸·Î µ¥ÀÌÅͺ£À̽º ¿¬°áÀ» Àç¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¬°á È®Àο¡´Â Ãß°¡ÀÇ ¿À¹öÇìµå°¡ ÇÊ¿äÇϹǷΠ¼º´ÉÀÌ ¾à°£ ÀúÇ쵃 ¼ö ÀÖ½À´Ï´Ù.
- Validation Method. À¥ ¼¹ö°¡ µ¥ÀÌÅͺ£À̽º È®Àο¡ »ç¿ëÇÒ ¹æ¹ýÀ» ÁöÁ¤ÇÕ´Ï´Ù. ´ÙÀ½ÀÇ °ªÀ» ¼±ÅÃÇÕ´Ï´Ù.
- auto-commit. ÀÌ ¸ðµåÀÇ °æ¿ì Äõ¸®¹®ÀÌ °³º° Æ®·£Àè¼ÇÀ¸·Î ½ÇÇà ¹× Ä¿¹ÔµË´Ï´Ù. auto-commitÀ» »ç¿ëÇÏÁö ¾Êµµ·Ï ¼³Á¤Çϸé Äõ¸®¹®Àº Ä¿¹Ô ¶Ç´Â ·Ñ¹é ±â¹ý¿¡ ÀÇÇÏ¿© Á¾·áµÉ ¼ö ÀÖ´Â Æ®·£Àè¼ÇÀ¸·Î ±×·ìȵ˴ϴÙ.
- meta-data. ÀÌ ¸ðµåÀÇ °æ¿ì ¿¬°áÀÇ µ¥ÀÌÅͺ£À̽º°¡ ÇØ´ç Å×À̺í, ÀúÀåµÈ ÇÁ·Î½ÃÀú µî¿¡ ´ëÇÑ ¸ÞŸ Á¤º¸¸¦ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. meta-data °³Ã¼ÀÇ °¢ ÀνºÅϽº¿¡´Â ÀÌ¿¡ ¿¬°áµÈ ƯÁ¤ Äõ¸®°¡ ÀÖ½À´Ï´Ù. meta-data °³Ã¼´Â ÇØ´ç Äõ¸®¸¦ ½ÇÇàÇÏ°í °á°ú¸¦ ij½ÃÇÕ´Ï´Ù.
- table. ÀÌ ¹æ¹ýÀÇ °æ¿ì À¥ ¼¹ö°¡ »ç¿ëÀÚ ÁöÁ¤ Å×ÀÌºí¿¡ ´ëÇÑ Äõ¸®¸¦ ¼öÇàÇØ¾ß ÇÕ´Ï´Ù.
- Table Name. Validation Method µå·Ó´Ù¿î ¸ñ·Ï¿¡¼ À¯È¿¼º °Ë»ç ¿É¼Ç tableÀ» ¼±ÅÃÇÏ´Â °æ¿ì ¿©±â¿¡ Å×À̺í À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.
- Fail All Connections. Ç®¿¡ ÀÖ´Â ¸ðµç ¿¬°áÀ» Â÷´ÜÇÑ ÈÄ ´Ù½Ã ¼³Á¤ÇÏ¿© ´ÜÀÏ ¿¬°áÀÌ ½ÇÆÐÇß´ÂÁö È®ÀÎÇϵµ·Ï ÇÒ °ÍÀÎÁö ÁöÁ¤ÇÕ´Ï´Ù. ¼±ÅÃÇÏÁö ¾Ê´Â °æ¿ì ¿¬°áÀº »ç¿ëµÇ´Â °æ¿ì¿¡¸¸ °³º°ÀûÀ¸·Î Àç¼³Á¤µË´Ï´Ù.
Transaction Isolation
Æ®·£Àè¼ÇÀÌ »ç¿ëÇÏ´Â ºÐ¸® ¼öÁØ¿¡ µû¶ó ´Ù¸¥ »ç¿ëÀÚÀÇ Æ®·£Àè¼Ç¿¡ ÀÇÇÑ º¯°æ¿¡ ´ëÇÑ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¹Î°¨µµ°¡ ´Þ¶óÁö¸ç, µû¶ó¼ ÀÌ·¯ÇÑ º¯°æ¿¡ ´ëÇÑ º¸È£¸¦ À§ÇÏ¿© Æ®·£Àè¼ÇÀÌ Àá±ÝÀ» À¯ÁöÇØ¾ß ÇÏ´Â ½Ã°£ÀÌ °áÁ¤µË´Ï´Ù.
- Transaction Isolation. ÀÌ ¿¬°á¿ë Æ®·£Àè¼Ç ºÐ¸® ¼öÁØÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ °ªÀ» ¼±ÅÃÇÕ´Ï´Ù.
- read-uncommitted. dirty read¶óµµ°í Çϸç, ÀÌ ¿É¼ÇÀ» »ç¿ëÇÏ¸é µ¥ÀÌÅÍÀÇ Ä¿¹Ô ¿©ºÎ¿¡ »ó°ü ¾øÀÌ Æ®·£Àè¼ÇÀÌ ÇöÀç µ¥ÀÌÅÍ ÆäÀÌÁö¿¡ ÀÖ´Â ¸ðµç µ¥ÀÌÅ͸¦ ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù.
- read-committed. µ¥ÀÌÅÍÀÇ °øÀ¯ Àá±ÝÀ» ´Ù¸¥ Æ®·£Àè¼ÇÀÌ º¯°æÇßÁö¸¸ ¾ÆÁ÷ Ä¿¹ÔÇÏÁö ¾ÊÀº µ¥ÀÌÅ͸¦ ÀÐÀ» ¼ö ¾øµµ·Ï ÇÏ´Â ¹æ½ÄÀ¸·Î Àû¿ëÇÕ´Ï´Ù. Ä¿¹ÔµÇÁö ¾ÊÀº µ¥ÀÌÅÍ´Â ÀÐÀ» ¼ö ¾øÀ¸¹Ç·Î read-committed ºÐ¸®·Î ½ÇÇàµÇ´Â Æ®·£Àè¼ÇÀÌ µ¥ÀÌÅ͸¦ ´Ù½Ã Äõ¸®Çϸé, ÇØ´ç µ¥ÀÌÅÍ°¡ º¯°æµÇ°Å³ª ¿ø·¡ Äõ¸®ÀÇ ¹üÁÖ¿¡ ÇØ´çÇÏ´Â Ãß°¡ µ¥ÀÌÅÍ°¡ Ç¥½ÃµÉ ¼ö ÀÖ½À´Ï´Ù.
- repeatable-read. Äõ¸®¿¡¼ »ç¿ëµÇ´Â ¸ðµç µ¥ÀÌÅÍ¿¡ Àá±ÝÀÌ Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù. Æ®·£Àè¼ÇÀ» Ä¿¹ÔÇϰųª ·Ñ¹éÇÏÁö ¾Ê´Â ÇÑ ÇØ´ç Æ®·£Àè¼ÇÀÌ »ç¿ëÇÏ´Â µ¥ÀÌÅ͸¦ ´Ù¸¥ »ç¿ëÀÚ°¡ ¼öÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
- serializable. Àá±ÝÀº µ¥ÀÌÅÍ Àüü¿¡ Àû¿ëµÇ¹Ç·Î Äõ¸®°¡ ´Ù½Ã ¼öÇàµÇ´Â °æ¿ì, ù ¹ø°¿Í µÎ ¹ø° Äõ¸® »çÀÌÀÇ ½Ã°£ µ¿¾È µ¥ÀÌÅÍ°¡ º¯°æµÇ°Å³ª Ãß°¡ µ¥ÀÌÅÍ ¿ÀÌ Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù.
- Guarantee Isolation Level. Ç®¿¡¼ °¡Á®¿Â ¸ðµç ¿¬°á¿¡ ÀÏÁ¤ÇÑ ¼öÁØÀÇ ºÐ¸®°¡ Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ÇØ´ç ¿¬°áÀÇ ºÐ¸® ¼öÁØÀÌ Áö³ ¹ø »ç¿ëÇÒ ¶§ ÇÁ·Î±×·¥ÀûÀ¸·Î(¿¹: con.setTransactionIsolation) º¯°æµÇ´Â °æ¿ì, ÀÌ ±â¹ýÀº ÁöÁ¤µÈ ºÐ¸® ¼öÁØÀ¸·Î º¹±¸µË´Ï´Ù.
¸í·ÉÁÙ ÀÎÅÍÆäÀ̽º »ç¿ë
¸í·ÉÁÙÀ» ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© »õ JDBC ¿¬°á Ç®À» ¸¸µå´Â ¹æ¹ýÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼ÀÇ JDBC ¿¬°á Ç® »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
JDBC ¸®¼Ò½º »ý¼º
JDBC ¸®¼Ò½º´Â ¶ÇÇÑ µ¥ÀÌÅÍ ¼Ò½º¶ó°íµµ Çϸç getConnection()À» »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º·ÎÀÇ ¿¬°áÀ» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Áß ÇÑ °¡Áö ¹æ¹ýÀ¸·Î JDBC ¸®¼Ò½º¸¦ ¸¸µì´Ï´Ù.
°ü¸® ÀÎÅÍÆäÀ̽º »ç¿ë
Administration ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© JDBC ¸®¼Ò½º¸¦ ¸¸µé·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- JDBC Resources¸¦ ´©¸¨´Ï´Ù.
- New ¹öÆ°À» ´©¸¨´Ï´Ù.
- ´ÙÀ½ Á¤º¸¸¦ ÀÔ·ÂÇÕ´Ï´Ù.
- JNDI Name(Çʼö). ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ JDBC ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÒ ¶§ ¹Ýµå½Ã »ç¿ëÇØ¾ß ÇÏ´Â JNDI À̸§À» ÀÔ·ÂÇÕ´Ï´Ù.
- Pool Name(Çʼö). ÀÌ JDBC ¸®¼Ò½º°¡ »ç¿ëÇÏ´Â ¿¬°á Ç®ÀÇ À̸§(¶Ç´Â ¾ÆÀ̵ð)À» ¸ñ·Ï¿¡¼ ¼±ÅÃÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº »õ JDBC ¿¬°á Ç® »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
- JDBC ¸®¼Ò½º¸¦ »ç¿ëÇÏ·Á¸é Data Source Enabled µå·Ó´Ù¿î ¸ñ·Ï¿¡¼ OnÀ» ¼±ÅÃÇÕ´Ï´Ù.
JDBC ¸®¼Ò½º¸¦ »ç¿ëÇÏÁö ¾Êµµ·Ï ¼³Á¤ÇÏ¸é ¾î¶² ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Òµµ ÀÌ¿¡ ¿¬°áÇÒ ¼ö ¾øÀ¸³ª, ±¸¼ºÀº ¼¹ö ÀνºÅϽº¿¡ À¯ÁöµË´Ï´Ù.
- OK¸¦ ´©¸¨´Ï´Ù.
- Apply Changes¸¦ ´©¸¨´Ï´Ù.
¸í·ÉÁÙ ÀÎÅÍÆäÀ̽º »ç¿ë
¸í·ÉÁÙÀ» ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© »õ JDBC ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼ÀÇ JDBC ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º »ý¼º
´ÙÀ½°ú °°ÀÌ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù.
°ü¸® ÀÎÅÍÆäÀ̽º »ç¿ë
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- Custom Resources¸¦ ´©¸¨´Ï´Ù.
- New ¹öÆ°À» ´©¸¨´Ï´Ù.
- ´ÙÀ½ Á¤º¸¸¦ ÀÔ·ÂÇÕ´Ï´Ù.
- JNDI Name(Çʼö). ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÒ ¶§ ¹Ýµå½Ã »ç¿ëÇØ¾ß ÇÏ´Â JNDI À̸§À» ÀÔ·ÂÇÕ´Ï´Ù.
- Resource Type(Çʼö). »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½ºÀÇ ÀÎÁõµÈ À¯ÇüÀ» ÀÔ·ÂÇÕ´Ï´Ù.
- Factory Class(Çʼö). »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ÆÑÅ丮 Ŭ·¡½ºÀÇ ÀÎÁõµÈ À̸§À» ÀÔ·ÂÇÕ´Ï´Ù. ÀÌ¿¡ µû¶ó javax.naming.spi.ObjectFactory°¡ ±¸ÇöµË´Ï´Ù.
- Custom Resource Enabled(¼±ÅÃ). ·±Å¸ÀÓ¿¡ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ »ç¿ëÇϵµ·Ï ÇÏ·Á¸é OnÀ» ¼±ÅÃÇÕ´Ï´Ù.
- OK¸¦ ´©¸¨´Ï´Ù.
- Apply Changes¸¦ ´©¸¨´Ï´Ù.
¸í·ÉÁÙ ÀÎÅÍÆäÀ̽º »ç¿ë
¸í·ÉÁÙÀ» ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© »õ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼ÀÇ »ç¿ëÀÚ ÁöÁ¤ ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
¿ÜºÎ JNDI ¸®¼Ò½º »ý¼º
´ÙÀ½°ú °°ÀÌ ¿ÜºÎ ¸®¼Ò½º¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù.
°ü¸® ÀÎÅÍÆäÀ̽º »ç¿ë
- Server Manager¿¡ ¾×¼¼½ºÇÏ°í Java ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù.
- External JNDI Resources¸¦ ´©¸¨´Ï´Ù.
- New ¹öÆ°À» ´©¸¨´Ï´Ù.
- ´ÙÀ½ Á¤º¸¸¦ ÀÔ·ÂÇÕ´Ï´Ù.
- JNDI Name(Çʼö). ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ¿ä¼Ò°¡ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¿¡ ¾×¼¼½ºÇÒ ¶§ ¹Ýµå½Ã »ç¿ëÇØ¾ß ÇÏ´Â JNDI À̸§À» ÀÔ·ÂÇÕ´Ï´Ù.
- Resource Type(Çʼö). »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½ºÀÇ ÀÎÁõµÈ À¯ÇüÀ» ÀÔ·ÂÇÕ´Ï´Ù.
- Factory Class(Çʼö). »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ÆÑÅ丮 Ŭ·¡½ºÀÇ ÀÎÁõµÈ À̸§À» ÀÔ·ÂÇÕ´Ï´Ù. ÀÌ¿¡ µû¶ó javax.naming.spi.ObjectFactory°¡ ±¸ÇöµË´Ï´Ù.
- JNDI Lookup(Çʼö). ¿ÜºÎ ÀúÀå¼Ò¿¡¼ Á¶È¸ÇÒ JNDI °ªÀ» ÀÔ·ÂÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ¿ÜºÎ ÀúÀå¼Ò·Î ¿¬°áÇÏ¿© ¸ÞÀÏ Å¬·¡½º¸¦ ½ÃÇèÇÒ ¿ÜºÎ ¸®¼Ò½º¸¦ ¸¸µå´Â °æ¿ì JNDI Á¶È¸´Â cn=testmailÀ̾î¾ß ÇÕ´Ï´Ù.
- External Resource Enabled(¼±ÅÃ). ·±Å¸ÀÓ¿¡ ¿ÜºÎ ¸®¼Ò½º¸¦ »ç¿ëÇϵµ·Ï ÇÏ·Á¸é ONÀ» ¼±ÅÃÇÕ´Ï´Ù.
- OK¸¦ ´©¸¨´Ï´Ù.
- Apply Changes¸¦ ´©¸¨´Ï´Ù.
¸í·ÉÁÙ ÀÎÅÍÆäÀ̽º »ç¿ë
¸í·ÉÁÙÀ» ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© »õ »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ ¸¸µå´Â ¹æ¹ýÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼ÀÇ ¿ÜºÎ JNDI ¸®¼Ò½º »ý¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
Java ±â¹Ý ¸®¼Ò½º ¼öÁ¤¿©±â¿¡¼´Â Administration ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© Java ±â¹Ý ¸®¼Ò½ºÀÇ µî·Ï Á¤º¸¸¦ ¼öÁ¤ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
JDBC ¿¬°á Ç® ¼öÁ¤
JDBC ¿¬°á Ç®ÀÇ µî·Ï Á¤º¸¸¦ ¼öÁ¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
JDBC ¸®¼Ò½º ¼öÁ¤
JDBC ¸®¼Ò½ºÀÇ µî·Ï Á¤º¸¸¦ ¼öÁ¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º ¼öÁ¤
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½ºÀÇ µî·Ï Á¤º¸¸¦ ¼öÁ¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
¿ÜºÎ JNDI ¸®¼Ò½º ¼öÁ¤
¿ÜºÎ JNDI ¸®¼Ò½ºÀÇ µî·Ï Á¤º¸¸¦ ¼öÁ¤ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
Java ±â¹Ý ¸®¼Ò½º »èÁ¦¿©±â¿¡¼´Â Administration ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÏ¿© J2EE ±â¹Ý ¸®¼Ò½º¸¦ »èÁ¦ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
JDBC ¿¬°á Ç® »èÁ¦
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î JDBC ¸®¼Ò½º¸¦ »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Administration Server »ç¿ë
Administration Server¸¦ »ç¿ëÇÏ¿© JDBC ¿¬°á Ç®À» »èÁ¦ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
¸í·ÉÁÙ À¯Æ¿¸®Æ¼ »ç¿ë
»ç¿ë °¡´ÉÇÑ ¸í·ÉÁÙ ¿É¼ÇÀÇ ±¸¹®¿¡ ´ëÇÑ ³»¿ëÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
JDBC ¸®¼Ò½º »èÁ¦
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î JDBC ¸®¼Ò½º¸¦ »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Administration Server »ç¿ë
Administration Server¸¦ »ç¿ëÇÏ¿© JDBC ¸®¼Ò½º¸¦ »èÁ¦ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
¸í·ÉÁÙ À¯Æ¿¸®Æ¼ »ç¿ë
»ç¿ë °¡´ÉÇÑ ¸í·ÉÁÙ ¿É¼ÇÀÇ ±¸¹®¿¡ ´ëÇÑ ³»¿ëÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
»ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º »èÁ¦
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Administration Server »ç¿ë
Administration Server¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚ Á¤ÀÇ ¸®¼Ò½º¸¦ »èÁ¦ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
¸í·ÉÁÙ À¯Æ¿¸®Æ¼ »ç¿ë
»ç¿ë °¡´ÉÇÑ ¸í·ÉÁÙ ¿É¼ÇÀÇ ±¸¹®¿¡ ´ëÇÑ ³»¿ëÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
¿ÜºÎ JNDI ¸®¼Ò½º »èÁ¦
´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î ¿ÜºÎ JDBC ¸®¼Ò½º¸¦ »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Administration Server »ç¿ë
Administration Server¸¦ »ç¿ëÇÏ¿© ¿ÜºÎ JDBC ¸®¼Ò½º¸¦ »èÁ¦ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
¸í·ÉÁÙ À¯Æ¿¸®Æ¼ »ç¿ë
»ç¿ë °¡´ÉÇÑ ¸í·ÉÁÙ ¿É¼ÇÀÇ ±¸¹®¿¡ ´ëÇÑ ³»¿ëÀº ¸í·ÉÁÙ À¯Æ¿¸®Æ¼¸¦ ÂüÁ¶ÇϽʽÿÀ.