JSP ¼ºí¸´ À¥ ÇÁ·Î±×·¡¹ÖÀº À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡ ÇʼöÀûÀÎ API°¡ Æ÷ÇÔµÈ ÀÚÄ«¸£Å¸ EE À¥ ÇÁ·ÎÆÄÀÏ¿¡ Á¤ÀǵǾî ÀÖ´Â ¼ºí¸´°ú ¼¹ö ÆäÀÌÁö, Ç¥ÁØ ÅÂ±× ¶óÀ̺귯¸®, ÆÛ½ÃÅϽº µîÀÇ ÇÙ½ÉÀûÀÎ ÁÖÁ¦¸¦ ´Ù·é´Ù.
ÀÌ Ã¥ÀÇ 1Àå ÀÚ¹Ù À¥ ÇÁ·Î±×·¡¹Ö °³¿ä¿¡¼´Â ÀÚ¹Ù À¥ ¾ÖÇø®ÄÉÀÌ¼Ç Ç÷§Æû¿¡ ´ëÇÑ °³¿ä¿Í ÇÔ²², À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß µµ±¸¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. ±×¸®°í ÇÁ·ÎÁ§Æ® °ü¸® ºôµå µµ±¸ÀÎ ¸ÞÀ̺ìÀÇ »ç¿ë¹ý°ú ¾ÆÆÄÄ¡ ÅèĹ ¼¹ö¸¦ ¼³Á¤ÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼµµ »ìÆ캻´Ù. ±×¸®°í À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡ ÇʼöÀûÀÎ HTTP ÇÁ·ÎÅäÄÝ¿¡ ´ëÇؼµµ ¼³¸íÇÑ´Ù.
ÀÌ Ã¥Àº ¸ðµÎ 11 °³ÀÇ ½Ç½À °úÁ¦¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Ù. ÀÌµé ½Ç½À¿¡¼´Â ÀÚ¹Ù ÇÁ·Î±×·¡¹Ö ±âÃÊ¿Í SQL ÇÁ·Î±×·¡¹Ö¿¡¼µµ »ç¿ëÇÑ ÁÖ¹® °ü¸® ½Ã½ºÅÛ ¿¹Á¦ ÇÁ·ÎÁ§Æ®¸¦ »ý¼ºÇÏ°í °¢ Àå¿¡¼ ¼³¸íÇÑ ±â¼úÀ» »ç¿ëÇÏ¿© ½ÇÁ¦·Î ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °úÁ¤À» ´Ü°è º°·Î ¼³¸íÇÑ´Ù. 1ÀåÀÇ ¸¶Áö¸· ºÎºÐ¿¡¼´Â ÁÖ¹® °ü¸® ½Ã½ºÅÛ ¿¹Á¦ ÇÁ·ÎÁ§Æ®¸¦ »ý¼ºÇÏ´Â °úÁ¤À» ¼³¸íÇÑ´Ù.
2Àå ¼ºí¸´¿¡¼´Â ÀÚ¹Ù À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÇÙ½É ±â¼úÀÎ ¼ºí¸´¿¡ ´ëÇØ ÇнÀÇÑ´Ù. ¼ºí¸´À» ±¸ÇöÇÏ´Â ¹æ¹ý°ú HTTP ¿äûÀ» ó¸®ÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ ÇнÀÇÑ´Ù.
3Àå ÀÚÄ«¸£Å¸ ¼¹ö ÆäÀÌÁö¿¡¼´Â ÀÚÄ«¸£Å¸ ¼¹ö ÆäÀÌÁö Áï, JSP¿¡ ´ëÇÑ °³¿ä¿Í ÇÔ²² Áö½Ã¾î¿Í ¾×¼Ç ű×, ³»Àå °´Ã¼¿Í °°Àº ±¸¹®¿¡ ´ëÇØ ÇнÀÇÑ´Ù. ±×¸®°í ¹Ù¶÷Á÷ÇÏÁö´Â ¾ÊÁö¸¸ ¸ðµ¨ 1 ¹æ½ÄÀ¸·Î JSP¸¸ »ç¿ëÇÏ¿© À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÇöÇغ»´Ù.
4Àå ¼ºí¸´ + JSP¿¡¼´Â º»°ÝÀûÀ¸·Î ¼ºí¸´°ú JSP°¡ °áÇÕµÈ ¸ðµ¨ 2 ¹æ½ÄÀ¸·Î À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÇöÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ÇнÀÇÑ´Ù. ±×¸®°í ù ¹ø° ½Ç½ÀÀ¸·Î ÁÖ¹® °ü¸® ½Ã½ºÅÛÀÇ °í°´ °ü¸® ºÎºÐÀ» ±¸ÇöÇÑ´Ù.
5Àå Ç¥Çö½Ä ¾ð¾î¿¡¼´Â Ç¥Çö½Ä ¾ð¾îÀÇ ±¸¹®°ú ÇÔ²² Ç¥Çö½Ä ¾ð¾î¸¦ È°¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ ÇнÀÇÏ°í, 6Àå JSTL¿¡¼´Â Ç¥ÁØ ÅÂ±× ¶óÀ̺귯¸®ÀÇ ±¸¹® °³¿ä¿Í ÇÔ²², Core ÅÂ±× ¶óÀ̺귯¸®¿Í Çü½ÄÈ ÅÂ±× ¶óÀ̺귯¸®, XML ÅÂ±× ¶óÀ̺귯¸®, ÇÔ¼ö ÅÂ±× ¶óÀ̺귯¸®ÀÇ »ç¿ë ¹æ¹ý¿¡ ´ëÇؼ ÇнÀÇÑ´Ù. ±×¸®°í µÎ ¹ø° ½Ç½ÀÀ¸·Î Ç¥Çö½Ä ¾ð¾î¿Í ÅÂ±× ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ¿© Á¦Ç°°ú Àç°í °ü¸® ºÎºÐÀ» ±¸ÇöÇÑ´Ù.
8Àå°ú 9Àå¿¡¼´Â JDBC¿Í JPA¸¦ »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º·ÎºÎÅÍ µ¥ÀÌÅ͸¦ Àоî¿À°í µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ÇнÀÇÑ´Ù. ÀÌ°ÍÀ» À§ÇØ ÇÊÀÚÀÇ Àú¼ÀÎ SQL ÇÁ·Î±×·¡¹Ö¿¡¼ ±¸ÃàÇÑ µ¥ÀÌÅͺ£À̽º¸¦ »ç¿ëÇÑ´Ù. ÀÌ Ã¥¿¡¼µµ µ¥ÀÌÅͺ£À̽º¸¦ ¼³Ä¡ÇÏ´Â ¹æ¹ý°ú ±âº»ÀûÀÎ SQL ±¸¹®¿¡ ´ëÇؼ´Â ¼³¸íÇÏÁö¸¸ ±íÀÌÀÖ´Â Áö½ÄÀ» °®±â À§Çؼ´Â ¸ÕÀú SQL ÇÁ·Î±×·¡¹Ö Ã¥À» ÀÐÀ» °ÍÀ» ±ÇÀåÇÑ´Ù.
8Àå JDBC µ¥ÀÌÅÍ ¾×¼¼½º¿¡¼´Â µ¥ÀÌÅͺ£À̽º¿Í SQL¸¦ °³°üÇÏ°í ¿À¶óŬ µ¥ÀÌÅͺ£À̽º¿Í ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® SQL ¼¹ö, ±×¸®°í MySQL°ú PostgreSQL µî ³× °³ÀÇ µ¥ÀÌÅͺ£À̽º ¼¹ö¿Í °³¹ß µµ±¸¸¦ ¼³Ä¡ÇÏ´Â ¹æ¹ý°ú µ¥ÀÌÅͺ£À̽º¸¦ »ý¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ ¼³¸íÇÑ´Ù. ±×¸®°í JDBC ¼³Á¤°ú SQL ¹®À» ½ÇÇàÇÏ´Â ¹æ¹ý, ±×¸®°í Æ®·£Àè¼Ç °³³ä¿¡ ´ëÇؼ ÇнÀÇÑ´Ù. ¶ÇÇÑ °í°´ ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®¿Í Á¦Ç° ¹× Àç°í ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®, ±×¸®°í ÁÖ¹® ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®¸¦ JDBC¸¦ »ç¿ëÇÏ¿© ±¸ÇöÇÏ´Â ¼¼ °³ÀÇ ½Ç½ÀÀ» ¼öÇàÇÑ´Ù.
9Àå JPA µ¥ÀÌÅÍ ¾×¼¼½º¿¡¼´Â JPA¿Í ORM¿¡ ´ëÇÑ °³³äÀ» ÇнÀÇÏ°í, ¿£ÅÍƼ Ŭ·¡½º¿Í Å×À̺íÀ» ¸ÅÇÎÇÏ´Â ¹æ¹ý°ú JPA API¸¦ »ç¿ëÇÏ¿© ÁúÀÇÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ÇнÀÇÑ´Ù. ±×¸®°í ¶ÇÇÑ °í°´ ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®¿Í Á¦Ç° ¹× Àç°í ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®, ±×¸®°í ÁÖ¹® ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ®¸¦ JPA¸¦ »ç¿ëÇÏ¿© ±¸ÇöÇÏ´Â ¼¼ °³ÀÇ ½Ç½ÀÀ» ¼öÇàÇÑ´Ù.
10Àå À¥ º¸¾È¿¡¼´Â À¥ º¸¾ÈÀ» °³°üÇÏ°í, SSL°ú TSL ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ¿© HTTPS ÇÁ·ÎÅäÄÝÀ» ±¸ÇöÇÏ´Â ¹æ¹ýÀ» »ìÆ캻´Ù. ±×¸®°í ÀÎÁõ°ú ±ÇÇÑÀ» ¼³Á¤ÇÏ´Â ¹æ¹ý°ú ¸®¼Ò½º¸¦ º¸È£ÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼµµ ÇнÀÇÑ´Ù. ¶ÇÇÑ ¸¶Áö¸·À¸·Î ÁÖ¹® °ü¸® ½Ã½ºÅÛ¿¡ À¥ º¸¾ÈÀ» ±¸ÇöÇÏ´Â ½Ç½ÀÀ» ¼öÇàÇÑ´Ù.
11Àå ÇÊÅÍ¿Í ¸®½º³Ê¿¡¼´Â ÇÊÅÍ¿Í ¸®½º³ÊÀÇ °³³ä°ú ÇÔ²² ±¸ÇöÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ ÇнÀÇÑ´Ù.
1. ÀÚ¹Ù À¥ ÇÁ·Î±×·¡¹Ö °³¿ä
ÀÚ¹Ù À¥ ¾ÖÇø®ÄÉÀÌ¼Ç Ç÷§Æû
À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß µµ±¸
¸ÞÀÌºì ±âÃÊ »ç¿ë
¾ÆÆÄÄ¡ ÅèĹ ¼¹ö ¼³Á¤
HTTP ÇÁ·ÎÅäÄÝ
ÁÖ¹® °ü¸® ½Ã½ºÅÛ ¿¹Á¦ ÇÁ·ÎÁ§Æ® »ý¼º
2. ¼ºí¸´
¼ºí¸´ °³¿ä
¼ºí¸´ ±¸Çö
¼ºí¸´ ¹èÆ÷ ¼³Á¤
HTTP ¿äû ¸Þ¼µå ó¸®
¼ºí¸´ ÄÁÅؽºÆ® Ãʱ⠸Ű³º¯¼ö ¼³Á¤°ú Àбâ
¼ºí¸´ À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Çö
3. ÀÚÄ«¸£Å¸ ¼¹ö ÆäÀÌÁö
JSP °³¿ä
JSP ±¸¹® °³¿ä
Áö½Ã¾î(directives)
¾×¼Ç(action) ű×
³»Àå °´Ã¼
¸ðµ¨ 1 ¹æ½Ä À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Çö
4. ¼ºí¸´ + JSP
¼ºí¸´°ú JSP °áÇÕ
¸ðµ¨ 2 ¹æ½Ä À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Çö
½Ç½À1: °í°´ °ü¸® ±¸Çö
5. Ç¥Çö½Ä ¾ð¾î
Ç¥Çö½Ä ¾ð¾î ±¸¹®
Ç¥Çö½Ä ¾ð¾î È°¿ë
6. JSTL
JSTL ±¸¹®
Core ÅÂ±× ¶óÀ̺귯¸®
Çü½ÄÈ ÅÂ±× ¶óÀ̺귯¸®
XML ÅÂ±× ¶óÀ̺귯¸®
ÇÔ¼ö ÅÂ±× ¶óÀ̺귯¸®
½Ç½À2: Á¦Ç° ¹× Àç°í °ü¸® ±¸Çö
7. ¼¼¼Ç°ú ÄíÅ°
¼¼¼Ç
ÄíÅ°
½Ç½À3: ÁÖ¹® ó¸® ±¸Çö
½Ç½À4: ÁÖ¹® Á¶È¸ ±¸Çö
8. JDBC µ¥ÀÌÅÍ ¾×¼¼½º
µ¥ÀÌÅͺ£À̽º¿Í SQL
µ¥ÀÌÅͺ£À̽º ¼³Ä¡
µ¥ÀÌÅͺ£À̽º »ý¼º
µ¥ÀÌÅͺ£À̽º ½ºÅ°¸¶ »ý¼º
JDBC ¼³Á¤
SQL ¹® ½ÇÇà
Æ®·£Àè¼Ç
½Ç½À5: °í°´ JDBC ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
½Ç½À6: Á¦Ç° ¹× Àç°í JDBC ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
½Ç½À7: ÁÖ¹® JDBC ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
9. JPA µ¥ÀÌÅÍ ¾×¼¼½º
JPA¿Í ORM
JPA ¿£ÅÍƼ °ü¸®ÀÚ ¼³Á¤
¿£ÅÍƼ ¸ÅÇÎ
JPA API
½Ç½À8: °í°´ JPA ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
½Ç½À9: Á¦Ç° ¹× Àç°í JPA ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
½Ç½À10: ÁÖ¹® JPA ·¹ÆÄÁöÅ丮 ÄÄÆ÷³ÍÆ® ±¸Çö
10. À¥ º¸¾È
À¥ º¸¾È °³¿ä
SSL°ú TSL
ÀÎÁõ°ú ±ÇÇÑ ¼³Á¤
¸®¼Ò½º º¸È£
½Ç½À11: À¥ º¸¾È ±¸Çö
11. ÇÊÅÍ¿Í ¸®½º³Ê
ÇÊÅÍ °³¿ä
ÇÊÅÍ ±¸Çö
ÇÊÅÍ ¹èÆ÷ ¼³Á¤
¸®½º³Ê