Ã¥¼Ò°³
¡Ú ±¸Çö ¼ø¼¿¡ ¸ÂÃç ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇÏ¸ç ¹è¿ì´Â ½ÇÀü ÀÔ¹®¼¡Ú
ÀÌ Ã¥Àº ½ºÇÁ¸µ ºÎÆ® ÀÔ¹®ÀÚÀÇ ´«³ôÀÌ¿¡ ¸ÂÃç ½ºÇÁ¸µ ºÎÆ® ȯ°æ ¼³Á¤ºÎÅÍ Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ±¸Çö±îÁö¸¦ ´Ù·ì´Ï´Ù. ½ºÇÁ¸µ ºÎÆ®ÀÇ ±âº» °³³ä°ú ´Ù¾çÇÑ ½ºÇÁ¸µ ºÎÆ® ½ºÅ¸Å͸¦ ÀÌ¿ëÇØ Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ±¸Ãà ÇÁ·ÎÁ§Æ®¸¦ ±¸ÇöÇÕ´Ï´Ù. ½ºÇÁ¸µÀ» ¸ô¶óµµ °øºÎÇÒ ¼ö ÀÖµµ·Ï °¡´ÉÇÑ ÇÑ ½±°Ô ¼³¸íÇÏ°í µû¶ó ÇÒ ¼ö ÀÖ°Ô ¿¹Á¦ ÄÚµå¿Í ±×¸²À» Á¦½ÃÇß½À´Ï´Ù.
* ¹°·Ð ÀÚ¹Ù¸¦ »ç¿ëÇÒ ÁÙÀº ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
¡Ú ÀÌ Ã¥À» ÀÐ°í ³ª¸é ½ÀµæÇÒ ³»¿ë
¡Ü ½ºÇÁ¸µ ºÎÆ® ȯ°æ ¼³Á¤
¡Ü ½ºÇÁ¸µ ºÎÆ® Å×½ºÆ®
¡Ü ½ºÇÁ¸µ ºÎÆ® À¥
¡Ü ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2
¡Ü ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®
¡Ü ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡
¡Ü ½ºÇÁ¸µ ºÎÆ® & Ŭ¶ó¿ìµå
¡Ü ½ºÇÁ¸µ ºÎÆ® ¸Þ½Ã¡
¡Ü ½ºÇÁ¸µ ºÎÆ® ºôµå¿Í ¹èÆ÷
¡Ü Ä¿½ºÅÒ ¹è³Ê ¼³Á¤Çϱâ
¡Ü ÆäÀ̽ººÏ, ±¸±Û, īī¿À °³¹ßÀÚ¼¾ÅÍ ¿¬µ¿
¡Ú ÀÌ Ã¥ÀÇ ±¸¼º
ÀÌ Ã¥Àº 1Àå°ú 2Àå¿¡¼ ½ºÇÁ¸µ ºÎÆ®¸¦ ¾Ë¾Æº¸°í °³¹ß ȯ°æÀ» ¼³Ä¡ÇÕ´Ï´Ù. 3ÀåºÎÅÍ 7Àå±îÁö´Â Ä¿¹Â´ÏƼ »çÀÌÆ®¸¦ ¸¸µì´Ï´Ù. ÀÌ °úÁ¤¿¡¼ ½ºÇÁ¸µ ºÎÆ®¿¡¼ Á¦°øÇÏ´Â ½ºÅ¸Å͸¦ »ç¿ëÇÏ¿© ±¸ÇöÇÕ´Ï´Ù. ÇØ´ç ÇÁ·ÎÁ§Æ®¸¦ ¾î¶°ÇÑ ±¸Á¶·Î ¼³°èÇÒÁö ¾î¶°ÇÑ Äڵ带 ¾²´ÂÁö ¿¹Á¦¸¦ ÅëÇØ ¾Ë°Ô µÉ °Ì´Ï´Ù.
¡á 1Àå ½ºÇÁ¸µ ºÎÆ® ÀÔ¹®Çϱâ
½ºÇÁ¸µ ºÎÆ®ÀÇ ´Ù¾çÇÑ ½ºÅ¸Å͸¦ »ìÆìº¸¸ç °¢ ÀÇÁ¸¼º°ú ºÎ°¡ Á¤º¸¸¦ ¾î¶»°Ô È®ÀÎÇÏ´ÂÁö ¾Ë¾Æº¾´Ï´Ù. À̸¦ À§ÇØ ½ºÇÁ¸µ ºÎÆ® ÇÁ·ÎÁ§Æ®ÀÇ Æ¯Â¡À» ÀÌÇØÇÏ°í ½ºÇÁ¸µ ºÎÆ®¸¦ ÀÌ¿ëÇØ¼ ¾î¶»°Ô ÇÁ·ÎÁ§Æ®¸¦ ±¸¼ºÇÏ°í °³¹ßÇÏ´ÂÁö »ìÆìº¾´Ï´Ù.
¡á 2Àå ½ºÇÁ¸µ ºÎÆ® ȯ°æ ¼³Á¤
½ºÇÁ¸µ ºÎÆ® °³¹ß ȯ°æÀ» ±¸ÃàÇÕ´Ï´Ù. JDK¸¦ ¼³Ä¡Çϰí ÀÎÅÚ¸®Á¦ÀÌ IDEA¸¦ »ìÆìº¾´Ï´Ù. ¾Æ¿ï·¯ ±×·¹À̵é(Gradle)·Î ºôµåÇÏ°í ¸ÖÆ¼ ÇÁ·ÎÁ§Æ®¸¦ ±¸¼ºÇÏ¿© °øÅë »ç¿ëµÇ´Â Äڵ带 ÀçȰ¿ëÇÕ´Ï´Ù. ÀÌ¾î¼ 1Àå¿¡¼ »ìÆìº¸¾Ò´ø ºÐ»êµÈ ÀÇÁ¸¼ºÀÌ ¾î¶»°Ô Çϳª·Î ¸ð¾ÆÁ® ÀÚµ¿ ¼³Á¤µÇ´ÂÁöµµ ¾Ë¾Æº¸°Ú½À´Ï´Ù.
¡á 3Àå ½ºÇÁ¸µ ºÎÆ® Å×½ºÆ®
±âº»ÀûÀÎ Å×½ºÆ® ½ºÅ¸Å͸¦ ¾Ë¾Æº¾´Ï´Ù. ½ºÅ¸ÅÍ´Â Å©°Ô µÎ °¡Áö ¸ðµâ·Î ±¸¼ºµË´Ï´Ù. Çϳª´Â spring-boot-testÀÌ°í ´Ù¸¥ Çϳª´Â spring-boot-test-autoconfigureÀ̸ç Å×½ºÆ® °ü·Ã ÀÚµ¿ ¼³Á¤ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. º¸ÅëÀº spring-boot-starter-test·Î µÎ ¸ðµâÀ» ÇÔ²² »ç¿ëÇÕ´Ï´Ù. ÀÚÁÖ »ç¿ëÇÏ´Â ¾î³ëÅ×À̼ǵµ »ìÆìº¾´Ï´Ù.
¡á 4Àå ½ºÇÁ¸µ ºÎÆ® À¥
½ºÇÁ¸µ ºÎÆ® À¥À» ÀÌ¿ëÇÏ¿© Ä¿¹Â´ÏƼ °Ô½ÃÆÇÀ» ¸¸µì´Ï´Ù. ½ºÇÁ¸µ ºÎÆ® À¥Àº ÁÖ·Î ºä ÆäÀÌÁö³ª API ¿ëµµ·Î »ç¿ëÇÕ´Ï´Ù. ÀÌ Àå¿¡¼´Â Ä¿¹Â´ÏƼ °Ô½ÃÆÇÀÇ ºä ÆäÀÌÁö¸¦ ¸¸µå´Â ¹æ¹ýÀ» ´Ù·ç°í API´Â 7Àå¿¡¼ ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®(REST)¸¦ »ç¿ëÇÏ¿© ´Ù·ì´Ï´Ù.
¡á 5Àå ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2
½ºÇÁ¸µ ºÎÆ® 1.5 ¹öÀü¿¡¼ Áö¿øÇÏ´Â ½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼¿Í OAuth2 API¸¦ ºü¸£°í ½±°Ô Àû¿ëÇØº¾´Ï´Ù. 2.0 ¹öÀüºÎÅÍ´Â ½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼ ³»ºÎ¿¡ OAuth2 API°¡ Æ÷ÇԵǾú½À´Ï´Ù. µÎ °¡Áö ¹öÀü ¸ðµÎ ¾Ë¾Æº¾´Ï´Ù.
¡á 6Àå ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®
REST´Â À¥ÀÇ ÀåÁ¡À» ±Ø´ëÈÇÏ´Â Åë½Å ³×Æ®¿öÅ© ¾ÆÅ°ÅØÃ³ÀÔ´Ï´Ù. REST API °³¹ßÀ» ±âÁ¸ÀÇ MVC ÆÐÅÏÀ¸·Îµµ ÇØº¸°í, ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®¸¦ »ç¿ëÇÏ¿© °³¹ßÇÏ¸ç ¾î¶»°Ô ´Ù¸¥Áö Àå´ÜÁ¡À» ºñ±³ÇÕ´Ï´Ù. ±× °á°ú Á¦´ë·Î REST API¸¦ ¸¸µå´Â ¹æ¹ýÀ» ÀÍÈ÷°Ô µË´Ï´Ù.
¡á 7Àå ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡
½ºÇÁ¸µ ºÎÆ® ¹èÄ¡´Â ¹é¿£µåÀÇ ¹èÄ¡ ó¸® ±â´ÉÀ» ±¸ÇöÇÏ´Â µ¥ »ç¿ëÇÏ´Â ÇÁ·¹ÀÓ¿öÅ©ÀÔ´Ï´Ù. ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡¸¦ °£´ÜÈ÷ ¼Ò°³Çϰí, ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡¸¦ ½á¾ß ÇÏ´Â ÀÌÀ¯¿Í ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡ 2.0¿¡ °ÈµÈ ±â´É¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù. ³¡À¸·Î ÈÞ¸éȸ¿ø Àüȯ ±â´ÉÀ» Á÷Á¢ °³¹ßÇØº¾´Ï´Ù.
¡á ºÎ·Ï
½ºÇÁ¸µ ºÎÆ®·Î °³¹ßÇÏ´Â µ¥ ºÎ°¡ÀûÀ¸·Î ÇÊ¿äÇÑ \'ÄÚµå ´ÙÀÌ¾îÆ®¸¦ À§ÇÑ ·Òº¹ ÇÁ·ÎÁ§Æ®\', \'ÀÚµ¿À¸·Î LiveReloadÇÏ´Â devtools\', \'½ºÇÁ¸µ ºÎÆ® ºôµå¿Í ¹èÆ÷\', \'Ä¿½ºÅÒ ¹è³Ê ¼³Á¤Çϱâ\', \'ÆäÀ̽ººÏ, ±¸±Û, īī¿À °³¹ßÀÚ¼¾ÅÍ ¿¬µ¿\'À» ´Ù·ì´Ï´Ù.
¸ñÂ÷
CHAPTER 1 ½ºÇÁ¸µ ºÎÆ® ÀÔ¹®Çϱâ
1.1 ½ºÇÁ¸µ ºÎÆ® ¼Ò°³
__1.1.1 ½ºÇÁ¸µ ºÎÆ® Ư¡
__1.1.2 ½ºÇÁ¸µ ºÎÆ®¿Í ½ºÇÁ¸µ
1.2 Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ±â´É °í¾ÈÇϱâ
1.3 ½ºÇÁ¸µ ºÎÆ®·Î Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ¼³°èÇϱâ
1.4 ½ºÇÁ¸µ ºÎÆ® ½ºÅ¸ÅÍ µé¿©´Ùº¸±â
__1.4.1 ½ºÅ¸ÅÍÀÇ ¸í¸í±ÔÄ¢ ¾Ë¾Æº¸±â
__1.4.2 ½ºÅ¸ÅÍ ³»ºÎÀÇ ÀÇÁ¸¼º È®ÀÎ ¹æ¹ý
__1.4.3 ½ºÅ¸ÅÍ¿¡ ¸í½ÃµÈ ¹öÀüÀº ¾î¶»°Ô È®ÀÎÇÒ±î?
__1.4.4 ½ºÇÁ¸µ ºÎÆ® ¹öÀü¿¡ µû¶ó ¹«¾ùÀÌ ´Ù¸¥Áö ¾î¶»°Ô ¾Ë ¼ö ÀÖÀ»±î?
__1.4.5 ÀÌ Ã¥¿¡¼ ´Ù·ê ½ºÅ¸ÅÍ
__1.4.6 ½ºÇÁ¸µ ºÎÆ® Àå´ÜÁ¡
1.5 ¸¶Ä¡¸ç
CHAPTER 2 ½ºÇÁ¸µ ºÎÆ® ȯ°æ ¼³Á¤
2.1 JDK ¼³Ä¡Çϱâ
2.2 ÀÎÅÚ¸®Á¦ÀÌ IDEA »ç¿ëÇϱâ
__2.2.1 Ä¿¹Â´ÏƼ ¹öÀü°ú ¾óƼ¹ÌÆ® ¹öÀü
__2.2.2 Ä¿¹Â´ÏƼ ¹öÀü¿¡¼ ½ºÇÁ¸µ ºÎÆ® »ç¿ëÇϱâ
__2.2.3 ¾óƼ¹ÌÆ® ¹öÀü¿¡¼ ½ºÇÁ¸µ ºÎÆ® »ç¿ëÇϱâ
2.3 ±×·¹ÀÌµé ¼³Ä¡ ¹× ºôµåÇϱâ
__2.3.1 ±×·¹ÀÌµé ·¡ÆÛ
__2.3.2 ±×·¹ÀÌµé ¸ÖÆ¼ ÇÁ·ÎÁ§Æ® ±¸¼ºÇϱâ
2.4 ȯ°æ ÇÁ·ÎÆÛƼ ÆÄÀÏ ¼³Á¤Çϱâ
__2.4.1 ÇÁ·ÎÆÄÀÏ¿¡ µû¸¥ ȯ°æ ±¸¼º ºÐ¸®
__2.4.2 YAML ÆÄÀÏ ¸ÅÇÎÇϱâ
2.5 ÀÚµ¿ ȯ°æ ¼³Á¤ ÀÌÇØÇϱâ
__2.5.1 ÀÚµ¿ ȯ°æ ¼³Á¤ ¾î³ëÅ×À̼Ç
__2.5.2 @EnableAutoConfiguration »ìÆìº¸±â
__2.5.3 ÀÚµ¿ ¼³Á¤ ¾î³ëÅ×ÀÌ¼Ç »ìÆìº¸±â
__2.5.4 H2 Console ÀÚµ¿ ¼³Á¤ Àû¿ëÇϱâ
2.6 ¸¶Ä¡¸ç
CHAPTER 3 ½ºÇÁ¸µ ºÎÆ® Å×½ºÆ®
3.1 @SpringBootTest
3.2 @WebMvcTest
3.3 @DataJpaTest
3.4 @RestClientTest
3.5 @JsonTest
3.6 ¸¶Ä¡¸ç
CHAPTER 4 ½ºÇÁ¸µ ºÎÆ® À¥
4.1 Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ¼³°èÇϱâ
4.2 Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ÇÁ·ÎÁ§Æ® ÁغñÇϱâ
4.3 Ä¿¹Â´ÏƼ °Ô½ÃÆÇ ±¸ÇöÇϱâ
__4.3.1 ÇÁ·ÎÁ§Æ® ÀÇÁ¸¼º ±¸¼º
__4.3.2 ½ºÇÁ¸µ ºÎÆ® À¥ ½ºÅ¸ÅÍ »ìÆìº¸±â
__4.3.3 µµ¸ÞÀÎ ¸ÅÇÎÇϱâ
__4.3.4 µµ¸ÞÀÎ Å×½ºÆ®Çϱâ
__4.3.5 CommandLineRunner¸¦ »ç¿ëÇÏ¿© DB¿¡ µ¥ÀÌÅÍ ³Ö±â
__4.3.6 °Ô½Ã±Û ¸®½ºÆ® ±â´É ¸¸µé±â
__4.3.7 ŸÀÓ¸®ÇÁ ÀÚ¹Ù 8 ³¯Â¥ Æ÷¸Ë ¶óÀ̺귯¸® Ãß°¡Çϱâ
__4.3.8 ÆäÀÌ¡ ó¸®Çϱâ
__4.3.9 ÀÛ¼º Æû ¸¸µé±â
4.4 ¸¶Ä¡¸ç
CHAPTER 5 ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2
5.1 ¹è°æÁö½Ä ¼Ò°³
__5.1.1 ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼
__5.1.2 OAuth2
5.2 ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2 ¼³°èÇϱâ
5.3 ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2 ÀÇÁ¸¼º ¼³Á¤Çϱâ
5.4 ½ºÇÁ¸µ ºÎÆ® ½ÃÅ¥¸®Æ¼ + OAuth2 ±¸ÇöÇϱâ
__5.4.1 SNS ÇÁ·ÎÆÛƼ ¼³Á¤ ¹× ¹ÙÀεù
__5.4.2 ½ÃÅ¥¸®Æ¼ + OAuth2 ¼³Á¤Çϱâ
__5.4.3 ¾î³ëÅ×ÀÌ¼Ç ±â¹ÝÀ¸·Î User Á¤º¸ ºÒ·¯¿À±â
__5.4.4 ÀÎÁõ µ¿ÀÛ È®ÀÎÇϱâ
__5.4.5 ÆäÀÌÁö ±ÇÇÑ ºÐ¸®Çϱâ
5.5 ½ºÇÁ¸µ ºÎÆ® 2.0 ±â¹ÝÀÇ OAuth2 ¼³Á¤Çϱâ
__5.5.1 ½ºÇÁ¸µ ºÎÆ® 2.0 ¹öÀüÀ¸·Î ÀÇÁ¸¼º ¾÷±×·¹À̵å
__5.5.2 ½ºÇÁ¸µ ºÎÆ® 2.0 ¹æ½ÄÀÇ OAuth2 ÀÎÁõ Àç¼³Á¤
5.6 ¸¶Ä¡¸ç
CHAPTER 6 ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®
6.1 ¹è°æÁö½Ä
__6.1.1 REST ¼Ò°³
__6.1.2 RESTful Á¦¾à Á¶°Ç
__6.1.3 REST API ¼³°èÇϱâ
6.2 ¼³°èÇϱâ
__6.2.1 MVC ÆÐÅÏÀ» Ȱ¿ëÇÏ´Â ¹æ¹ý
__6.2.2 ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®¸¦ Ȱ¿ëÇÏ´Â ¹æ¹ý
6.3 ½ºÇÁ¸µ ºÎÆ® MVC ÆÐÅÏÀ¸·Î REST API ±¸ÇöÇϱâ
__6.3.1 ÁغñÇϱâ
__6.3.2 REST API ±¸ÇöÇϱâ
__6.3.3 CORS Çã¿ë ¹× ½ÃÅ¥¸®Æ¼ ¼³Á¤
__6.3.4 »ý¼º, ¼öÁ¤, »èÁ¦ ±¸Çö
__6.3.5 µ¿ÀÛ È®ÀÎ
6.4 ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®·Î REST API ±¸ÇöÇϱâ
__6.4.1 ÁغñÇϱâ
__6.4.2 ±âº» ³ëÃâ Àü·« »ìÆìº¸±â
__6.4.3 ½ºÇÁ¸µ ºÎÆ® µ¥ÀÌÅÍ ·¹½ºÆ®·Î REST API ±¸ÇöÇϱâ
__6.4.4 @RepositoryRestController¸¦ »ç¿ëÇÏ¿© REST API ±¸ÇöÇϱâ
__6.4.5 »ý¼º, ¼öÁ¤, »èÁ¦ ¿¬µ¿ Å×½ºÆ®
__6.4.6 ÇÁ·ÎÁ§¼ÇÀ¸·Î ³ëÃâ Çʵå Á¦ÇÑÇϱâ
__6.4.7 °¢ ¸Þ¼µå ±ÇÇÑ Á¦ÇÑ
__6.4.8 À̺¥Æ® ¹ÙÀεù
__6.4.9 URI ó¸®
__6.4.10 HAL ºê¶ó¿ìÀú Àû¿ëÇϱâ
6.5 ¸¶¹«¸®
CHAPTER 7 ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡
7.1 ¹è°æÁö½Ä
__7.1.1 ¹èÄ¡ 󸮿¡ ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡¸¦ ½á¾ß ÇÏ´Â ÀÌÀ¯
__7.1.2 ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡ 2.0
__7.1.3 ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡ ÁÖÀÇ»çÇ×
7.2 ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡ ÀÌÇØÇϱâ
__7.2.1 Job
__7.2.2 Step
__7.2.3 JobRepository
__7.2.4 JobLauncher
__7.2.5 ItemReader
__7.2.6 ItemProcessor
__7.2.7 ItemWriter
7.3 ½ºÇÁ¸µ ºÎÆ® ÈÞ¸éȸ¿ø ¹èÄ¡ ¼³°èÇϱâ
7.4 ½ºÇÁ¸µ ºÎÆ® ¹èÄ¡ ¼³Á¤Çϱâ
7.5 ½ºÇÁ¸µ ºÎÆ® ÈÞ¸éȸ¿ø ¹èÄ¡ ±¸ÇöÇϱâ
__7.5.1 ÈÞ¸éȸ¿ø ¹èÄ¡ Å×½ºÆ® ÄÚµå »ý¼º
__7.5.2 ÈÞ¸éȸ¿ø ¹èÄ¡ Á¤º¸ ¼³Á¤
__7.5.3 SQL·Î Å×½ºÆ® µ¥ÀÌÅÍ ÁÖÀÔÇϱâ
7.6 ½ºÇÁ¸µ ¹èÄ¡ ½ÉÈÇнÀ
__7.6.1 ´Ù¾çÇÑ ItemReader ±¸Çö Ŭ·¡½º
__7.6.2 ´Ù¾çÇÑ ItemWriter ±¸Çö Ŭ·¡½º
__7.6.3 JobParameter »ç¿ëÇϱâ
__7.6.4 Å×½ºÆ® ½Ã¿¡¸¸ H2 µ¥ÀÌÅͺ£À̽º¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤Çϱâ
__7.6.5 ûũ ÁöÇâ ÇÁ·Î¼¼½Ì
__7.6.6 ¹èÄ¡ÀÇ ÀÎÅͼÁÅÍ Listener ¼³Á¤Çϱâ
__7.6.7 ¾î³ëÅ×ÀÌ¼Ç ±â¹ÝÀ¸·Î Listener ¼³Á¤Çϱâ
__7.6.8 StepÀÇ È帧À» Á¦¾îÇÏ´Â Flow
7.7 ¸ÖƼ ½º·¹µå·Î ¿©·¯ °³ÀÇ Step ½ÇÇàÇϱâ
__7.7.1 TaskExecutor¸¦ »ç¿ëÇØ ¿©·¯ Step µ¿ÀÛ½Ã۱â
__7.7.2 ¿©·¯ °³ÀÇ Flow ½ÇÇà½Ã۱â
__7.7.3 ÆÄƼ¼Å´×À» »ç¿ëÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö
7.8 ¸¶¹«¸®
ºÎ·Ï A ÄÚµå ´ÙÀÌ¾îÆ®¸¦ À§ÇÑ ·Òº¹ ÇÁ·ÎÁ§Æ®
ºÎ·Ï B ÀÚµ¿À¸·Î LiveReloadÇÏ´Â devtools
ºÎ·Ï C ½ºÇÁ¸µ ºÎÆ® ºôµå¿Í ¹èÆ÷
ºÎ·Ï D Ä¿½ºÅÒ ¹è³Ê ¼³Á¤Çϱâ
ºÎ·Ï E ÆäÀ̽ººÏ, ±¸±Û, īī¿À °³¹ßÀÚ¼¾ÅÍ ¿¬µ¿