ÀÌ Ã¥Àº °·ÂÇÏ°í È®Àå °¡´ÉÇÑ ÀÚ¹Ù ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇϱâ À§ÇÑ Àαâ ÀÖ°í °·ÂÇÑ ÇÁ·¹ÀÓ¿öÅ©ÀÎ ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ ¼¼°è¸¦ Ž±¸ÇÏ´Â Æ÷°ýÀûÀÎ °¡À̵åÀÔ´Ï´Ù. ÀÌ Ã¥Àº °³¹ßÀÚ°¡ ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ ÇÙ½É °³³äÀ» ÀÌÇØÇÏ°í ±× ±â´ÉÀ» È°¿ëÇÏ¿© ¿£ÅÍÇÁ¶óÀÌÁî±Þ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µå´Â ¹æ¹ýÀ» º¸¿©ÁÖ±â À§ÇØ ¼³°èµÇ¾ú½À´Ï´Ù.
1Àå, '½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ© ¼Ò°³'¿¡¼´Â ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©¿¡ ´ëÇÑ °³¿ä¿Í ÃֽŠÀÚ¹Ù °³¹ß¿¡¼ ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©°¡ °®´Â Á߿伺À» ¼³¸íÇÕ´Ï´Ù. ½ºÇÁ¸µÀ» »ç¿ëÇÏ¸é ¾òÀ» ¼ö ÀÖ´Â ÀÌÁ¡, ¾ÆÅ°ÅØó, ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀ» °£¼ÒÈÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ ´Ù¾çÇÑ ±¸¼º ¿ä¼Ò¿Í ¸ðµâÀ» Ž»öÇϱâ À§ÇÑ ±âÃʸ¦ ´ÙÁý´Ï´Ù.
2Àå, '½ºÇÁ¸µ ÇÙ½É °³³ä'¿¡¼´Â Á¦¾îÀÇ ¿ªÀü(IoC), ÀÇÁ¸¼º ÁÖÀÔ(DI), ºó °ü¸®¿Í °°Àº ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ ÇÙ½É °³³ä¿¡ ÁßÁ¡À» µÓ´Ï´Ù. ½ºÇÁ¸µ ºóÀ» ±¸¼ºÇÏ°í, Á¾¼Ó¼ºÀ» ¿ÍÀ̾ÇÏ°í, ApplicationContext¸¦ »ç¿ëÇÏ¿© ¾ÖÇø®ÄÉÀÌ¼Ç ±¸¼º ¿ä¼Ò¸¦ È¿°úÀûÀ¸·Î °ü¸®ÇÏ´Â ¹æ¹ýÀ» ¹è¿ì°Ô µË´Ï´Ù.
3Àå, '½ºÇÁ¸µ ¾î³ëÅ×À̼Ç'¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ¾î³ëÅ×À̼ÇÀÇ °·ÂÇÑ ±â´ÉÀ» »ìÆ캾´Ï´Ù. @Component, @Autowired, @Qualifier¿Í °°ÀÌ ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ¾î³ëÅ×À̼ǰú »ç¿ëÀÚ Á¤ÀÇ ¾î³ëÅ×À̼ÇÀ» »ý¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. ÀÌ Àå¿¡¼´Â ¾î³ëÅ×À̼ÇÀ» È°¿ëÇØ ±¸¼ºÀ» °£¼ÒÈÇÏ°í °¡µ¶¼ºÀ» Çâ»ó½ÃÅ°´Â ¹æ¹ýÀ» ´Ù·ì´Ï´Ù.
4Àå, '½ºÇÁ¸µ MVC'¿¡¼´Â À¥ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀ» ¿ëÀÌÇÏ°Ô ÇÏ´Â ½ºÇÁ¸µÀÇ À¥ ¸ðµâÀÎ ½ºÇÁ¸µ MVC¸¦ »ìÆ캾´Ï´Ù. ¿äû ó¸®, ÄÁÆ®·Ñ·¯, ºä, ½ºÇÁ¸µ MVC·Î À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» ºôµåÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µÀÇ MVC ±â´ÉÀ» »ç¿ëÇÏ¿© À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÒ ¼ö ÀÖ´Â ±â¼úÀ» ½ÀµæÇÕ´Ï´Ù.
5Àå, '½ºÇÁ¸µ ºÎÆ®'¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼³Á¤°ú ±¸¼ºÀ» °£¼ÒÈÇÏ´Â ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ °·ÂÇÑ È®Àå ±â´ÉÀÎ ½ºÇÁ¸µ ºÎÆ®¿¡ ÁßÁ¡À» µÓ´Ï´Ù. µ¶¸³ ½ÇÇàÇü ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé°í, ½ºÇÁ¸µ Boot ½ºÅ¸Å͸¦ »ç¿ëÇÏ°í, ÀÚµ¿ ±¸¼º ±â´ÉÀ» È°¿ëÇÏ´Â ¹æ¹ýÀ» ¹è¿ó´Ï´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µ Boot·Î ÇÁ·Î´ö¼Ç¿¡ ¹Ù·Î »ç¿ëÇÒ ¼ö ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» ºü¸£°Ô °³¹ßÇÏ´Â ¹æ¹ýÀ» ´Ù·ì´Ï´Ù.
6Àå, '½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼'¿¡¼´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ °·ÂÇÑ º¸¾È ±â´ÉÀ» Á¦°øÇÏ´Â ½ºÇÁ¸µÀÇ º¸¾È ¸ðµâÀ» »ìÆ캾´Ï´Ù. ÀÎÁõ, ±ÇÇÑ ºÎ¿©, À¥ ¾ÖÇø®ÄÉÀÌ¼Ç º¸¾È, RESTful API º¸È£¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ¾ÈÀüÇÏ°í ½Å·ÚÇÒ ¼ö ÀÖ´Â ÀÎÁõ ¸ÞÄ¿´ÏÁòÀ» ±¸ÇöÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÕ´Ï´Ù.
7Àå, '½ºÇÁ¸µÀÇ µ¥ÀÌÅÍ ¾×¼¼½º'¿¡¼´Â µ¥ÀÌÅÍ ¾×¼¼½º ¹× µ¥ÀÌÅͺ£À̽º ÅëÇÕ¿¡ ´ëÇÑ ½ºÇÁ¸µÀÇ Áö¿ø¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆ캾´Ï´Ù. JDBC·Î ÀÛ¾÷ÇÏ°í, ½ºÇÁ¸µ µ¥ÀÌÅ͸¦ »ç¿ëÇØ ´Ù¾çÇÑ µ¥ÀÌÅÍ ¼Ò½º¿Í »óÈ£ ÀÛ¿ëÇÏ°í, ½ºÇÁ¸µÀ» Hibernate¿Í °°Àº Àαâ ÀÖ´Â ORM ÇÁ·¹ÀÓ¿öÅ©¿Í ÅëÇÕÇÏ´Â ¹æ¹ýÀ» ¹è¿ì°Ô µË´Ï´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µÀ» »ç¿ëÇØ µ¥ÀÌÅÍ ¾×¼¼½º °èÃþÀ» ½±°Ô ±¸ÃàÇÏ´Â ¹æ¹ýÀ» ´Ù·ì´Ï´Ù.
8Àå, '½ºÇÁ¸µÀ¸·Î Å×½ºÆ®Çϱâ'¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ÇÀ» È¿°úÀûÀ¸·Î Å×½ºÆ®ÇÏ´Â µ¥ ÁßÁ¡À» µÓ´Ï´Ù. ´ÜÀ§ Å×½ºÆ®, ÅëÇÕ Å×½ºÆ®, @MockBean ¹× @DataJpaTest¿Í °°Àº Å×½ºÆ® ¾î³ëÅ×À̼ÇÀ» »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. ÀÌ Àå¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ °·ÂÇÑ Å×½ºÆ® ½ºÀ§Æ®¸¦ ¸¸µå´Â µ¥ ÇÊ¿äÇÑ ÀλçÀÌÆ®¸¦ Á¦°øÇÕ´Ï´Ù.
9Àå, '°í±Þ ÁÖÁ¦'¿¡¼´Â ½ºÇÁ¸µ °³¹ßÀÇ °í±Þ ÁÖÁ¦¿Í ±â¼úÀ» »ìÆ캾´Ï´Ù. ½ºÇÁ¸µ AOP, ½ºÇÁ¸µ ¸¶ÀÌÅ©·Î¼ºñ½º ¹× ±âŸ °í±Þ ±â´É¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â ÀÌ·¯ÇÑ °í±Þ ±â´ÉÀ» È°¿ëÇÏ¿© °í¼º´É ¾ÖÇø®ÄÉÀ̼ÇÀ» ºôµåÇÏ´Â ¹æ¹ýÀ» ´Ù·ì´Ï´Ù.
10Àå, '½ÇÁ¦ ½ºÇÁ¸µ ÇÁ·ÎÁ§Æ®'¿¡¼´Â ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ½ÇÁ¦ ¿¹Á¦¸¦ ¼Ò°³ÇÕ´Ï´Ù. ÀÌ Àå¿¡¼´Â ½ÇÁ¦ ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇÏ´Â µ¥ ½ºÇÁ¸µÀÌ ¾î¶»°Ô »ç¿ëµÇ´ÂÁö¿¡ ´ëÇÑ ÀλçÀÌÆ®¸¦ Á¦°øÇÕ´Ï´Ù.
ÀÌ Ã¥Àº ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©¸¦ »ç¿ëÇÏ¿© ¿£ÅÍÇÁ¶óÀÌÁî±Þ ÀÚ¹Ù ¾ÖÇø®ÄÉÀ̼ÇÀ» ºôµåÇÏ´Â µ¥ ÇÊ¿äÇÑ Áö½Ä°ú ±â¼úÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ Ã¥Àº Ãʺ¸ÀÚÀÌµç ¼÷·ÃµÈ ÀÚ¹Ù °³¹ßÀÚÀÌµç »ó°ü¾øÀÌ ½ºÇÁ¸µ °³¹ßÀÇ ±âº» °³³ä°ú °í±Þ ±â¼úÀ» ¾È³»ÇÕ´Ï´Ù. ÀÌ Ã¥À» ´Ù ÀÐ°í ³ª¸é ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ °·ÂÇÑ ±â´ÉÀ» »ç¿ëÇÏ¿© È®Àå °¡´ÉÇÏ°í À¯Áö °ü¸®°¡ ¿ëÀÌÇÏ¸ç ¼º´ÉÀÌ ¶Ù¾î³ ÀÚ¹Ù ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé ¼ö ÀÖ´Ù´Â ÀڽۨÀ» °®°Ô µÉ °ÍÀÔ´Ï´Ù.
1Àå : ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ© ¼Ò°³
___1. ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©´Â?
___2. ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ Á߿伺
___3. ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ© ¼³Ä¡Çϱâ
2Àå : ½ºÇÁ¸µ ÇÙ½É °³³ä
___1. IoC ÄÁÅ×À̳Ê
___2. ½ºÇÁ¸µ ºó
___3. ÀÇÁ¸¼º ÁÖÀÔ
___4. ½ºÇÁ¸µ ¸ðµâ
3Àå : ½ºÇÁ¸µ ¾î³ëÅ×À̼Ç
___1. ½ºÇÁ¸µ ¾î³ëÅ×ÀÌ¼Ç °³¿ä
___2. ÄÚ¾î ¾î³ëÅ×À̼Ç
___3. MVC ¾î³ëÅ×À̼Ç
___4. µ¥ÀÌÅÍ ¾×¼¼½º ¾î³ëÅ×À̼Ç
4Àå : ½ºÇÁ¸µ MVC
___1. ½ºÇÁ¸µ MVC ¼Ò°³
___2. ½ºÇÁ¸µ MVC ¾ÖÇø®ÄÉÀÌ¼Ç »ý¼ºÇϱâ
___3. ½ºÇÁ¸µ MVC Æû ó¸®
___4. ½ºÇÁ¸µ MVCÀÇ ÀÎÅͼÁÅÍ
5Àå : ½ºÇÁ¸µ ºÎÆ®
___1. ½ºÇÁ¸µ ºÎÆ® ¼Ò°³
___2. ½ºÇÁ¸µ ºÎÆ® ¼³Á¤
___3. ½ºÇÁ¸µ ºÎÆ® ¾ÖÇø®ÄÉÀÌ¼Ç »ý¼º
___4. ½ºÇÁ¸µ ºÎÆ®ÀÇ ÀÚµ¿ ±¸¼º »ç¿ë
6Àå : ½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼
___1. ½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼ ¼Ò°³
___2. ½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼ ±¸¼ºÇϱâ
___3. ÀÎÁõ ±¸ÇöÇϱâ
___4. ±ÇÇÑ ºÎ¿© ±¸ÇöÇϱâ
7Àå : ½ºÇÁ¸µÀÇ µ¥ÀÌÅÍ ¾×¼¼½º
___1. µ¥ÀÌÅÍ ¾×¼¼½º ¼Ò°³
___2. Spring JDBC
___3. ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA
8Àå : ½ºÇÁ¸µ Å×½ºÆ®
___1. ´ÜÀ§ Å×½ºÆ®
___2. ÅëÇÕ Å×½ºÆ®
___3. ¸ðÀÇ °´Ã¼·Î Å×½ºÆ®Çϱâ
9Àå : °í±Þ ÁÖÁ¦
___1. ½ºÇÁ¸µ ¸¶ÀÌÅ©·Î¼ºñ½º
___2. ½ºÇÁ¸µ Ŭ¶ó¿ìµå
___3. ½ºÇÁ¸µÀÇ °üÁ¡ ÁöÇâ ÇÁ·Î±×·¡¹Ö
10Àå : ½ÇÁ¦ ½ºÇÁ¸µ ÇÁ·ÎÁ§Æ®
___1. ÇÁ·ÎÁ§Æ® °èȹ ¹× ¼³Á¤
___2. ½ºÇÁ¸µ ¾ÖÇø®ÄÉÀÌ¼Ç ºôµå
___3. ¹èÆ÷ ¹× À¯Áö °ü¸®