[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 56์ผ์ฐจ
์ด๋ฒ ์์ ์์๋ ๋๋์ด Spring Boot๋ฅผ ๋ณธ๊ฒฉ์ ์ผ๋ก ๋ฐฐ์ฐ๊ธฐ ์์ํ๋ค.
์ง๊ธ๊น์ง๋ ์์ Spring Framework๋ก ํ๋ํ๋ ์๋ ์ค์ ํ๋ฉฐ ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ฑํด์๋๋ฐ, ์ด๋ฒ์๋ Spring Boot๋ฅผ ํตํด ํจ์ฌ ๊ฐํธํ๊ฒ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ํ ์ ์๋ค๋ ์ ์ ๋๋ ์ ์์๋ค.
๐ ์ค๋ ๋ฐฐ์ด ๋ด์ฉ ์ ๋ฆฌ
๐ท Spring Boot์ ํต์ฌ ๊ฐ๋ ๊ณผ ํน์ง
Spring Boot๋ ๋ณต์กํ ์ค์ ์์ด ๋น ๋ฅด๊ฒ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์๋๋ก ๋์์ฃผ๋ ํ๋ ์์ํฌ๋ค.
๊ธฐ์กด Spring Framework์์๋ web.xml, servlet-context.xml ๋ฑ์ ์ง์ ๊ตฌ์ฑํด์ผ ํ์ง๋ง,
Spring Boot๋ @SpringBootApplication ํ๋๋ก ๋๋ถ๋ถ์ ์ค์ ์ ์๋ ์ฒ๋ฆฌํด์ค๋ค.
@SpringBootApplication ํ๋๋ง์ผ๋ก ํ๋ก์ ํธ๊ฐ ์คํ๋๊ณ , ๋ด์ฅ ํฐ์บฃ ๋๋ถ์ ๋ณ๋ ์๋ฒ ์ค์ ์์ด๋ ๋ฐ๋ก ๋ธ๋ผ์ฐ์ ๋ก ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์๋ค๋ ์ ์ด ์ ๊ธฐํ๋ค. ์ค์ ํ์ผ๋ ํจ์ฌ ๊ฐ๊ฒฐํด์ก๊ณ , application.properties ํ๋๋ก ํฌํธ, ์ธ์ฝ๋ฉ, DB ๊ฐ์ ํ๊ฒฝ ์ค์ ์ ํตํฉํด์ ๊ด๋ฆฌํ ์ ์๋ค๋ ๊ฒ ๊ฝค ํธ๋ฆฌํ๊ฒ ๋๊ปด์ก๋ค.
๋ฌด์๋ณด๋ค ์ข์๋ ๊ฑด, Starter ์์กด์ฑ์ ํตํด ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ ์์์ ๋ฌถ์ด์ค๋ค๋ ์ ์ด์๋ค. ์์ ์๋ ์์กด์ฑ ํ๋ํ๋ ์ง์ ์ถ๊ฐํ๋ฉด์ ์๊ฒผ๋ ๋ถํ์ํ ์๋ฌ๋ ์ถฉ๋๋ค์ ๋ ์ฌ๋ฆฌ๋ฉด, Spring Boot๊ฐ ์ผ๋ง๋ ์ค์ฉ์ ์ธ ํ๋ ์์ํฌ์ธ์ง ํ์คํ ์ฒด๊ฐ๋๋ค.
๐ถ Spring Boot ํ๋ก์ ํธ ์ธํ ํ๋ฆ ์ดํด
์ค์ต์ผ๋ก๋ “Hello, SpringBoot!”๋ผ๋ ๊ฐ๋จํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด๋ดค๋ค. Spring Initializr์์ Web๊ณผ DevTools ์์กด์ฑ์ ์ ํํ๊ณ , main() ํจ์์์ SpringApplication.run()์ผ๋ก ๋ฐ๋ก ์คํ. ์ด ์งง์ ๊ณผ์ ๋ง์ผ๋ก ์๋ฒ๊ฐ ์คํ๋๊ณ , @GetMapping("/")์ผ๋ก ๊ฐ๋จํ ๋ผ์ฐํ ๋ ๊ตฌํํ ์ ์์๋ค.
์ฌ์ค ์ฒ์์ ๋๋ฌด ๊ฐ๋จํด์ “์ด๊ฒ ๋ค์ผ?” ์ถ์์ง๋ง, ์ด์ ์ Spring ์ค์ ์ ์ง์ ํด๋ณธ ๊ฒฝํ์ด ์์ด์ ๊ทธ๋ฐ์ง ์คํ๋ ค Spring Boot์ ๊ฐ๊ฒฐํจ์ด ๋ ํฌ๊ฒ ๋ค๊ฐ์๋ค.
์ด์ ๋ ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ์ค์ ์ ์๊ฐ์ ํ๋นํ์ง ์์๋ ๋๊ณ , ํต์ฌ ๋ก์ง์ ์ง์คํ ์ ์๋ ๊ธฐ๋ฐ์ด ๋ง๋ค์ด์ก๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ์์ง์ ์๋ ์ค์ ์ด ์ด๋ป๊ฒ ์ด๋ค์ง๋์ง ์์ ํ ์ดํดํ์ง ๋ชปํ์ง๋ง, ์์ผ๋ก ๊ณต๋ถํ๋ฉด์ ๊ทธ ์๋ฆฌ๋ฅผ ํ๋์ฉ ์์๊ฐ๋ ๊ฒ๋ ํฅ๋ฏธ๋ก์ธ ๊ฒ ๊ฐ๋ค.
๐งก ๋๋ ์
์ค๋์ Spring Boot์ ์ง์ ์ฅ๋ฒฝ์ด ์๊ฐ๋ณด๋ค ๋ฎ๋ค๋ ๊ฑธ ๋๊ผ๋ค.
์ง์ ์ค์ ์ ํด๋ณธ ๊ฒฝํ์ด ์์๊ธฐ์ ์๋ ์ค์ ์ด ์ผ๋ง๋ ๋ง์ ๋ถ๋ถ์ ๋์ด์ฃผ๋์ง๋ ์ฒด๊ฐํ ์ ์์๊ณ , ์คํ๋ ค “์ Spring Boot๋ฅผ ์ฐ๋๊ฐ”์ ๋ํ ๋ต์ด ๋ช ํํ ์๋ฟ์๋ค.
ํ์ง๋ง ๋์์, ์ด๋ฐ ์๋ํ๋ ํ๊ฒฝ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ดํดํ๊ณ ํ์ฉํ๋ ค๋ฉด ๊ธฐ๋ณธ์ ์ธ Spring ๊ตฌ์กฐ์ ๋ํ ์ดํด๊ฐ ๋ฐ๋์ ํ์ํ๋ค๋ ์ฌ์ค๋ ๋ค์ ํ ๋ฒ ๋๊ผ๋ค.
๊ทธ๋์์ ์๋ ์ค์ ๊ฒฝํ์ด ํ๋์ง ์์๋ค๋ ์๊ฐ์ด ๋ค์ด์ ๊ธฐ๋ถ์ด ์ข์๊ณ , Spring Boot๋ผ๋ ๋๊ตฌ ์์์ ๋ด๊ฐ ์ด๋ค ์๋น์ค๋ฅผ ๊ตฌํํด๊ฐ ์ ์์์ง ๊ธฐ๋๊ฐ ๋ง์ด ๋๋ค.
๋ด์ผ๋ถํฐ๋ Spring Boot ๊ธฐ๋ฐ์ผ๋ก ๋ณธ๊ฒฉ์ ์ธ ๊ธฐ๋ฅ ๊ตฌํ์ ๋ค์ด๊ฐ๊ฒ ๋๋๋ฐ, ์ด์ ์ผ ์ง์ง “ํ๋ก์ ํธ๋ฅผ ๋ง๋ ๋ค”๋ ๋๋์ด ๋๋ ๊ฒ ๊ฐ์ ์ ์ ๋ ํฅ๋ฏธ๋กญ๋ค. ๐