JSP ¼ºí¸´ À¥ ÇÁ·Î±×·¡¹Ö
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Àå ÇÊÅÍ¿Í ¸®½º³Ê¿¡¼´Â ÇÊÅÍ¿Í ¸®½º³ÊÀÇ °³³ä°ú ÇÔ²² ±¸ÇöÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ ÇнÀÇÑ´Ù.