Site Search :
Standard Enterprise XML Methodology Pattern Setting Tunning Other
Article Contributors
GuestBook
Javapattern Maven
XSourceGen Dev
JetSpeed Test
JLook Image
jLook Family Site


Web Application Framework°³¹ß¹æ¹ý(1)-FrameworkÀÇ °³¿ä
 
À̹ø ±Û¿¡¼­´Â Mini-javapattern Framework(°¡Äª)À̸§À¸·Î ÇÁ·¹ÀÓ¿÷¿¡ ´ëÇÑ °³³ä ¹× ¼³°è»ç»ó, ½ÇÁ¦ Àû¿ë¹æ¾È ÀÛ¼º±â¹ýµî¿¡ ´ëÇÏ¿© ³íÇÏ¿© º¸µµ·Ï ÇÑ´Ù. ( 2003/03/20 ) 659
Written by ienvyou - ÃÖÁö¿õ
1 of 1
 

À̹ø ±Û¿¡¼­´Â Mini-javapattern Framework(°¡Äª)À̸§À¸·Î ÇÁ·¹ÀÓ¿÷¿¡ ´ëÇÑ °³³ä ¹× ¼³°è»ç»ó,
½ÇÁ¦ Àû¿ë¹æ¾È ÀÛ¼º±â¹ýµî¿¡ ´ëÇÏ¿© ³íÇÏ¿© º¸µµ·Ï ÇÑ´Ù.

½ÃÀÛÀÌ ¹ÝÀ̶ó°í Áö±Ý ÀÌ·¸°Ô ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é °è¼Ó ÁøÇàÇÒ ¼ö ¾ø±â ¶§¹®¿¡ ½ÇÁ¦ ±¸ÇöÇϱâ·ÎÇß´ø
Struts Tiles Frameworkº¸´Ù ¾Õ¼­ ¾ÆƼŬ ¿¬À縦 ½ÃÀÛÇϵµ·Ï ÇÑ´Ù. ÀÌÇØÇØ Áֱ⠹ٶõ´Ù.

ÀÚ, ÀÌÁ¦ µåµð¾î ½ÃÀÛÀÌ´Ù.

¢º Framework

ÇÁ·¹ÀÓ¿÷À̶õ ¼­·Î °ü·ÃÀÌ ÀÖ´Â ¸¹Àº ¼öÀÇ ¹®Á¦¸¦ Ç®±â À§ÇÑ Ãß»óÀû ¼³°è¸¦ ±¸Ã¼È­ÇÑ Å¬·¡½º ÁýÇÕÀ» 
¸»ÇÑ´Ù. Ŭ·¡½º¸¦ ±âº» ´ÜÀ§·Î ÇÏ¿© Á¦¾î¿¡ °ü·ÃµÈ »çÇ×°ú ¾Ë°í¸®ÁòÀ» ĸ½¶È­ ÇÏ¿© ´Ù¾çÇÑ ±¸Á¶¿Í 
ÇàÀ§¸¦ °¡Áú ¼ö ÀÖµµ·Ï Çϸç À¯Áöº¸¼ö, È®ÀåÀÌ °¡´ÉÇϵµ·Ï ¼³°èÇÏ¿© ºü¸¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÒ ¼ö
ÀÖµµ·Ï µµ¿ÍÁÖ´Â À¯±âÀûÀΠŬ·¡½ºµéÀÇ ¸ðÀÓÀ̶ó°í º¸¸é ¹«¹æÇÏ°Ú´Ù.

¢º FrameworkÀÇ ÀÌÇØ

½ÇÁ¦ ¿©·¯ºÐµéÀÌ ÀÛ¼ºÇØ¿Ô´ø Servlet/JSP ÇÁ·Î±×·¥µéµµ ¾Ë°íº¸¸é ½ÇÁ¦ ÇÁ·¹ÀÓ¿÷ÀÇ ±â¹Ý¾Æ·¡¼­ 
ÀÛµ¿µÇ´Â °ÍÀε¥, ¿ì¸®µéÀº ±×°ÍÀ» °¡¸£ÄÑ ÄÁÅ×À̳ʶó ¾Ë°í ÀÖ´Ù.
ÄÁÅ×À̳ʵµ ÇϳªÀÇ ÇÁ·¹ÀÓ¿÷ÀÌ´Ù? ´ëÃæ ¸ÂÀ» °Í °°´Ù. 
´ç½ÅµéÀº ¼­ºí¸´ ÇÁ·Î±×·¥À» ÀÛ¼ºÀ» ÇÒ ¶§ service, doGet, doPost ¸Þ¼ÒµåµîÀ» ÀÌ¿ëÇÏ¿© ÀÛ¼ºÇÏ¿´´Ù. 
¾î¶² ¸Þ¼Òµå°¡ ¾î¶² »óȲÇÏ¿¡ µ¿ÀÛÀ» Çϸç, ¾î¶°ÇÑ ¶óÀÌÇÁ»çÀÌŬÀ» °®´ÂÁö ¾Ë°í ÀÖ´Ù.

ÀÚ, ´ç½ÅµéÀÌ À¥ÇÁ·Î±×·¥À» ÀÏÀÏÀÌ ÇÁ·ÎÅäÄݱîÁö ºÐ¼®ÇØ°¡¸ç © Çʿ伺ÀÌ ÀÖ´Ù°í »ý°¢Çϴ°¡? 

±×°Ç ¾Æ´Ï´Ù. Áï ÄÁÅ×À̳ʴ À§¿¡¼­ À̾߱âÇÑ °Í ó·³ Ãß»óÀû ¼³°è¸¦ ÅëÇÑ Å¬·¡½ºÀÇ ±¸Ã¼È­ÀÇ ±¸Á¶¸¦
ÃëÇÏ°í Àֱ⠶§¹®¿¡ ´ç½ÅµéÀº À¥ÇÁ·Î±×·¡¹ÖÀ» ¾ÆÁÖ ºü¸£°í Á¤È®ÇÏ°Ô Â© ¼ö ÀÖ¾ú´ø °ÍÀÌ´Ù.
ºñ´Ü À§ÀÇ °æ¿ì¿¡¼­¸¸ ÇÁ·¹ÀÓ¿÷ÀÌ ¾²ÀÌ´Â °ÍÀÌ ¾Æ´Ï¶ó ¾ÆÁÖ ¸¹Àº ºÐ¾ß¿¡¼­ ÇÁ·¹ÀÓ¿÷ÀÌ »ç¿ëµÇ°í 
ÀÖÀ½À» ¾Ë¾Æ¾ß ÇÑ´Ù.

ÀÚ ÀÌÁ¦ Á¶±Ý ÀÌÇØ°¡ µÇ´Â°¡? 
¿ì¸®°¡ °³¹ßÇÒ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÇÁ·¹ÀÓ¿÷Àº ½º½º·Î°¡ °³¹ßÇϱâ Æí¸®Çϵµ·Ï ¸¸µé¾îÁø 
user-define¼º°ÝÀÇ Å¬·¡½º ¸ðÀÓÀ̶ó »ý°¢ÇÏ¸é µÈ´Ù. ¾î¶² µ¿ÀÛÀ» ¾î¶² ¼ø¼­·Î ÇàÇÒ °ÍÀÎÁö¸¦ ¸ÕÀú 
ºÐ¼®ÇÑ ÈÄ ¼³°è, ±¸ÇöÀ» ÇÏ¿© ´Ù¸¥ °³¹ßÀڵ鵵 ÀÌ¿ëÇÒ ¼ö ÀÖµµ·Ï ÃÖÀûÈ­½ÃÅ°¸é µÈ´Ù

¢º FrameworkÀÇ °³¹ßÀÇ ÁÖº¯»óȲ

ÀÚ. ³î»õ°¡ ¿ä¼Ò±â¼ú¿¡ ´ëÇÑ ÇÑ°¡´ÚÀ̹ǷΠ¾î¶°ÇÑ ³»¿ëµéÀ» ÅëÇÏ¿© ¹«¾ùÀ» ¸¸µé¾î³¾ Áö º¸µµ·Ï ÇÏÀÚ.

ÀϹÝÀûÀ¸·Î ¿©·¯ºÐµéÀÌ º¸¾Æ¿Â ÇÁ·¹ÀÓ¿÷µéÀº ¹«¾ùÀ» °¡Áö°í Àִ°¡? Struts, Avalon±âŸ µîµîÀÇ 
ÇÁ·¹ÀÓ¿÷µéÀ» »ý°¢Çغ¸¶ó~
´äÀÌ ³ª¿À´Â°¡? 

¹Ù·Î ¶óÀÌÇÁ»çÀÌŬÀ̶õ °ÍÀÌ ³ªÅ¸³ª°Ô µÈ´Ù. ´ç½ÅµéÀº ¹«½É°á¿¡ ¶óÀÌÇÁ»çÀÌŬÀ» Áö³ªÄ¡°í ÀÖ´Â
°æ¿ì°¡ Çã´ÙÇÏ´Ù. °¡Àå ´Ü¼øÇÑ ¿¹¸¦ º¸¿©ÁÖ°Ú´Ù. ¾ÖÇø´µµ ¶óÀÌÇÁ»çÀÌŬÀ» °¡Áö°í ÀÖÁö¸¸
(¾ÖÇø´ ¶óÀÌÇÁ»çÀÌŬÀº init(), paint(), repaint(), destory() µîÀÇ ¶óÀÌÇÁ»çÀÌŬÀ» °¡Áø´Ù), ¿äÁò ´©±¸³ª 
ÇѹøÂëÀº ¼­ºí¸´, jspÆÄÀÏÀ» ÀÛ¼ºÇغ¸¾Ò±â ¶§¹®¿¡ À¥À» ¿¹·Î µé°Ú´Ù.

¼­ºí¸´À» Â¥ºÃ´ÙÇؼ­ ¼­ºí¸´ÀÇ ¶óÀÌÇÁ»çÀÌŬÀ» ¾Æ´Â ÀÌ´Â µµ´ëü ÀüüÀÇ ¸îÆÛ¼¾Æ®°¡ µÉÁö 
³î»õ~ ½ÉÈ÷ ±Ã±ÝÇÏ´Ù.
¼­ºí¸´ÀÌ È£ÃâµÇ¸é ÃÖÃÊ·Î ºÒ·ÁÁö´Â ¸Þ¼Òµå´Â ¹«¾ùÀΰ¡? init()¸Þ¼ÒµåÀÌ´Ù. ¿£Áø½ÃÀÛ ÈÄ ÃÖÃÊ
ÇѹøÀÇ Å¬·¡½ºÆÄÀÏÀÌ ·ÎµùµÉ¶§ ºÒ·ÁÁö¸ç, ÀÌÈÄ ¿äûµé¿¡ ´ëÇÏ¿©¼­´Â service()¸Þ¼Òµå°¡
¿£ÁøÀÌ Á¤»óÀûÀÎ shutdownÀÌ ÀÌ·ç¾îÁ³À» °æ¿ì´Â destory()¸Þ¼Òµå°¡ È£ÃâµÈ´Ù. 
¾Ë°í ÀÖ¾ú´Â°¡? ¾ÆÁÖ ´ÙÇàÀÌ´Ù.

ÀÌ·¸°Ô ´ç½ÅµéÀÌ ÀÌ·¯ÇÑ ¶óÀÌÇÁ»çÀÌŬÀ» ¾ÍÀ¸·Î¼­ ½ÇÁ¦ request, response°´Ã¼ÀÇ Ã³¸®°¡ ÄÁÅ×À̳ʿ¡
ÀÇÇÏ¿© ¾î¶»°Ô 󸮵ȴٴ °ÍÀÎÁö¸¦ ¸ô¶óµµ À¥ÇÁ·Î±×·¡¹ÖÀ» ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù.

À§ÀÇ ¶óÀÌÇÁ»çÀÌŬÀº ¾î¶°ÇÑ ±âÁØ¿¡ ÀÇÇÏ¿© ½±°Ô À¥ÇÁ·Î±×·¥À» Â¥±â À§ÇÏ¿© 
JSR(Java Specification Requests)·Î °øÇ¥ÇسõÀº °ÍÀÌ°í, °Å±â¿¡ ´ýÀ¸·Î ¾ñ¾î¼­ Á» ´õ ¹ü¿ëÀûÀÌ°í 
È¿°úÀûÀÎ °³¹ß¹æ¹ýÀÌ µÇµµ·Ï ¿ì¸®ÀÇ ¶óÀÌÇÁ »çÀÌŬÀ» ¾º¿ö¾ß ÇÒ°ÍÀÌ´Ù. 

¹ü¿ëÀûÀ̶õ°Í.. ÇѱÛÀ» ¾²´Ï °£´ÜÇÏ°Ô ÇѱÛ󸮸¦ Çؾߵǰڰí, ȯ°æ¼³Á¤À» ÈξÀ º¸±â ½±°Ô 
¸¸µé¾î¾ß ÇÒ °ÍÀÌ°í, µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ Ã³¸®¸¦ º¸´Ù ½±°Ô Çؾ߰ڰí, ·Î±ë¿¡ ´ëÇÑ Á¤º¸µµ
±×·¸°Ô Çؾ߰ڰí .... ¾Æ~ Á¤¸» ¸¹Áö ¾ÊÀº°¡. ÀÌ·±°ÍµéÀ» ½ÇÁ¦ °³¹ß¼±»ó¿¡ µé¾î°£ °³¹ßÀڵ鿡°Ô
°¢ÀÚ ±¸ÇöÇÏ°Ô ÇÒ °ÍÀΰ¡? PL À̳ª PMÀº ±×°É ¾î¶»°Ô ÅëÇÕÇÏ¿© Å×½ºÆ®, Àμö ´Ü°è±îÁö
À̸£°Ô Çϸç, ÃßÈÄ 2Â÷°³¹ßÀÌ ÀÌ·ç¾îÁ³À» ¶§ ÅõÀÔµÈ °³¹ßÀڵ鿡°Ô´Â ¾î¶»°Ô ¾÷¹«ÀüÀ̸¦ 
½ÃÄÑ¾ß ÇÒ °ÍÀΰ¡?

º¸Åë ÀÏÀÌ ¾Æ´Ï´Ù. XP Çü»ó°ü¸®¸¦ ÀÌ¿ëÇÏ¿© ³ªÁß¿¡ 󸮸¦ ½ÃµµÇÏ°ÚÁö¸¸ ¿ì¼±Àº ÀÌ ±ÛÀ» º¸´Â
´ç½ÅµéÀÇ ¹ß»óÀÌ ´õ Áß¿äÇÏ´Ù.

¿Ö ÀÌ·¯ÇÑ ÇÁ·¹ÀÓ¿÷ÀÌ ÇÊ¿äÇϳÄÀÇ ¹®Á¦Á¦½ÃÀÌ´Ù. 
°íÀüÀÇ ¼ÒÇÁÆ®¿þ¾î °øÇÐÀûÀÎ Ãø¸éÀ» º¸°Ô µÇ¸é Àüü ¼ÒÇÁÆ®¿þ¾î ºñ¿ëÀÇ »ó´çºÎºÐÀ» À¯Áöº¸¼ö°¡
Â÷ÁöÇÏ´Â °æÇâÀÌ ºÐ¼®/¼³°è°¡ Á¦´ë·Î ÀÌ·ç¾îÁöÁö ¾ÊÀ» °æ¿ì ½É°¢ÇÏ°Ô Áõ´ëµÇ´Â Çö»óÀ» °¡Á®¿Â´Ù.
¶ÇÇÑ °³¹ßÀÌ Áß±¸³­¹æÀ¸·Î ÀÌ·ç¾îÁ® ½Ã½ºÅÛ ÅëÇÕ ¹× Å×½ºÆ®ÀÇ ½Ã±â°¡ ´Ê¾îÁö°í, ±×¿¡ ¼ö¹ÝÇÑ
¿©·¯°¡Áö ¹®Á¦Á¡µéÀÌ ³ªÅ¸³ª°Ô µÈ´Ù.

ÇöÀç ½Ã´ë´Â ´ëü ¾î¶² ½Ã´ëÀΰ¡? Time to market!!!!
½Ã°£ÀÌ °ð µ·°ú Á÷°áµÇ´Â °ÍÀÌ°í, ±Þ°ÝÇÑ È¯°æÀÇ º¯È­¿¡ ÀûÀÀÇÒ ¼ö ÀÖ¾î¾ß Çϸç, ¾Æħ¿¡ ¹ß»ýÇÑ
°í°´ÀÇ ¿ä±¸¿¡ Àú³á½Ã°£¿¡ °á°ú¸¦ º¸¿©ÁÙ ¼ö ÀÖ¾î¾ß ÇÑ´Ù.

¾îµð¼­ µé¾îº» ¸» °°Áö ¾ÊÀº°¡? ¹Ù·Î XPÀε¥ Áö±Ý°ú´Â ´Ù¸¥ ¹æÇâÀÇ ¹®Á¦À̹ǷΠ´Ù·çÁö ¾Ê´Â´Ù.
±Ã±ÝÇÏ¸é ¾Æ·¡ÀÇ ¾ÆƼŬÀ» Àо¶ó.

http://www.javapattern.info/viewArticle.do?articleId=1046681327265

À̾߱Ⱑ »ïõÆ÷·Î ºüÁö´Â °æÇâÀÌ ¿³º¸ÀÌ°í Àִµ¥ Çê¼Ò¸®´Â ¿©±â±îÁö ÇÏ°í º»·ÐÀ¸·Î µ¹¾Æ¿Í¼­
¼³°è ÁÖº¯»óȲÀ» ¹Ý¿µÇغ¸µµ·Ï ÇÏÀÚ.


¾Æ·¡¿Í °°ÀÌ °¡Á¤À» Çϵµ·Ï ÇÑ´Ù.
1. ±âº»ÀûÀ¸·Î BL(Business Logic)¿Í PL(Presentation Logic)ÀÇ ºÐ¸®¹æ¾ÈÀÎ Model 2 Architecture¸¦ 
¾²µµ·Ï ÇÑ´Ù.
JSP Model 2 Architecture¸¦ ¸ÕÀú Àо±â ¹Ù¶õ´Ù.

http://www.javapattern.info/viewArticle.do?articleId=1046824361862

2. ¸ðµç ȯ°æ¼³Á¤¿¡ °ü·ÃÇÑ ºÎºÐÀº propertyŬ·¡½º ¶Ç´Â XML ConfigurationÀ» »ç¿ëÇϵµ·Ï ÇÑ´Ù.
3. Tag Lib¸¦ ÅëÇÏ¿© JSP PageÀÇ ¸ðµç ºÎºÐÀÇ scriptlet(<% %>)À» Á¦°ÅÇϵµ·Ï ÇÑ´Ù
4. ¾î¶°ÇÑ container¿¡¼­µµ ±¸µ¿µÇ¾îÁú ¼ö ÀÖµµ·Ï ºôµå ¶Ç´Â ÀνºÅçȯ°æÀ» ¼³Á¤ÇÑ´Ù.
5. È­¸é·¹À̾ƿôÀº ÆäÀÌÁöÀÇ ¼³Á¤À» ÅëÇÏ¿© Struts tilesó·³ ÀÚÀ¯ÀÚÀçÀÇ ¹èÄ¡°¡ °¡´ÉÅä·Ï ÇÑ´Ù.
6. °³¹ßÀÚµéÀÌ ÃÖ´ëÇÑ °£´ÜÇÑ ¹æ¹ýÀ¸·Î ÄÚµùÀÌ °¡´ÉÇϵµ·Ï ¾ÆÅ°ÅØÃĸ¦ ±¸¼ºÇÑ´Ù.
7. getter, setterµî ±âŸ °³¹ßȯ°æÀÛ¾÷ÀÇ ºÒÇÊ¿äÇÑ Å¬·¡½º ÀÛ¼º½Ã°£À» ÃÖ¼ÒÈ­ÇÏ´Â À¯Æ¿¸®Æ¼µîÀ»
°³¹ßÇÑ´Ù.
8. Testcase¿Í stress test¸¦ ¾ðÁ¦µç ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï ÀûÀçÀû¼Ò¿¡ ÇØ´ç ¸ðµâÀ» ¹èÄ¡Çϵµ·Ï ÇÑ´Ù.
9. Àüü ¾ÆÅ°ÅØÃÄ´Â ¾Æ·¡ÀÇ ±×·¥À» µû¸£µµ·Ï ÇÑ´Ù.



À§ÀÇ ±¸Á¶ ¹×  ½Ã³ª¸®¿À¸¦ ÀÌ¿ëÇÏ¿© ÇÁ·¹ÀÓ¿÷À» ¸¸µé¾îº¸°Ú´Âµ¥
´ÙÀ½ Æí¿¡¼­´Â ¶óÀÌÇÁ»çÀÌŬ¿¡ ´ëÇÑ Á¤ÀÇ ÇÙ½É ÄÁÆ®·Ñ·¯ Ŭ·¡½º¸¦ ÅëÇÏ¿© ¾î¶»°Ô ȯ°æÀ»
¼³Á¤ÇÑ ÈÄ È帧À» Å» ¼ö ÀÖµµ·Ï Çϴ°ÍÀΰ¡¿¡ ´ëÇÏ¿© Á¤ÀÇÇÏ°íÀÚ ÇÑ´Ù.

Âü°í·Î À̹ø WAF´Â ½ÇÁ¦ ¿¹Àü¿¡ ÂË°ú ÇÕÀÛÇØ Á¦ÀÛÇÑ »ó¿ë Spider WAFÀÇ 20% ¼öÁØÁ¤µµÀÓÀ»
¹àÇôµÐ´Ù.

³·¿¡ ÀÏÇÏ°í ¹ã¿¡ ±Û¾²°í.. Á×°í Àâ´Ù...¤¾¤¾¤¾
 
1
References
 
http://java.sun.com/blueprints
Copyright ¨Ï 2003 www.javapattern.info & www.jlook.com, an jLOOK co.,LTD