์น ํ๋ก์ ํธ๋ฅผ ์์ํ๋ ค๋ฉด ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์๊ฐ๋ณด๋ค ๋ง์ต๋๋ค. ์คํ๋ง ์น MVC, ๋ด์ฅ ํฐ์บฃ, JSON ์ฒ๋ฆฌ, ๋ก๊ทธ ๊ด๋ฆฌ, ์ค์ ํ์ผ ๋ฑ ๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ์ํฉ๋๋ค. ๊ฐ๋ฐ์ ์ ์ฅ์์๋ ๊ทธ์ ์น ํ๋ก์ ํธ๋ฅผ ์์ํ๊ณ ์ถ์ ๋ฟ์ธ๋ฐ, ๊ฐ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ผ์ผ์ด ์ถ๊ฐํ๊ณ ์ค์ ํ๋ ์ผ์ ๋ฒ๊ฑฐ๋กญ์ต๋๋ค.
์คํ๋ง ๋ถํธ ์คํํฐ๋?
์คํ๋ง ๋ถํธ ์คํํฐ๋ ํน์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๋ฐ ํ์ํ ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ ๋ชจ์๋ ์์กด์ฑ ์ธํธ์ ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ๋ณต์กํ ์ค์ ์์ด ๊ฐ๋จํ๊ฒ ํ๋ก์ ํธ๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์คํ๋ง ๋ถํธ ์คํํฐ ๋๋ถ์ ๋๊ตฌ๋ ์ฝ๊ณ ํธ๋ฆฌํ๊ฒ ํ๋ก์ ํธ๋ฅผ ์์ํ ์ ์์ต๋๋ค.
์์ : spring-boot-starter-web
• build.gradle - dependencies ์ถ๊ฐ
dependencies {
// ์คํ๋ง ๋ถํธ ์คํํฐ ์น
implementation 'org.springframework.boot:spring-boot-starter-web'
}
์์ ์์กด์ฑ์ ์ถ๊ฐํ๋ฉด, ์คํ๋ง ์น MVC, ๋ด์ฅ ํฐ์บฃ, JSON ์ฒ๋ฆฌ ๋ฑ ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ํ์ํ ๋ชจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์๋์ผ๋ก ํฌํจ๋ฉ๋๋ค. ์ด๋ ์ฌ์ฉํ๊ธฐ ํธ๋ฆฌํ๊ฒ ์์กด์ฑ์ ๋ชจ์๋ ์ธํธ๋ก, ๊ด๋ จ ์์กด์ฑ ์ธํธ๋ฅผ ํ ๋ฒ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
์คํ๋ง ๋ถํธ ์คํํฐ์ ์ด๋ฆ ํจํด
์คํ๋ง ๋ถํธ ์คํํฐ์ ์ด๋ฆ์ ๋์ฒด๋ก spring-boot-starter-* ํ์์ ๋ฐ๋ฆ ๋๋ค. ์ด๋ ์ฝ๊ฒ ์ฐพ๊ณ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ค๋๋ค. ์๋ฅผ ๋ค์ด, ์คํ๋ง๊ณผ ์น์ ์ฌ์ฉํ๋ ค๋ฉด spring-boot-starter-web, ์คํ๋ง๊ณผ JPA๋ฅผ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด spring-boot-starter-data-jpa๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์คํ๋ง ๋ถํธ ์คํํฐ - ์์ฃผ ์ฌ์ฉํ๋ ๊ฒ ์์ฃผ
• spring-boot-starter: ํต์ฌ ์คํํฐ, ์๋ ๊ตฌ์ฑ, ๋ก๊น , YAML ๋ฑ์ ํฌํจ
• spring-boot-starter-jdbc: JDBC์ HikariCP ์ปค๋ฅ์ ํ์ ํฌํจ
• spring-boot-starter-data-jpa: ์คํ๋ง ๋ฐ์ดํฐ JPA, ํ์ด๋ฒ๋ค์ดํธ ๋ฑ์ ํฌํจ
• spring-boot-starter-data-mongodb: ์คํ๋ง ๋ฐ์ดํฐ ๋ชฝ๊ณ DB ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจ
• spring-boot-starter-data-redis: ์คํ๋ง ๋ฐ์ดํฐ Redis์ Lettuce ํด๋ผ์ด์ธํธ๋ฅผ ํฌํจ
• spring-boot-starter-thymeleaf: ํ์๋ฆฌํ ๋ทฐ ํ ํ๋ฆฟ ์์ง๊ณผ ์น MVC๋ฅผ ํฌํจ
• spring-boot-starter-web: ์น ๊ตฌ์ถ์ ์ํ ์คํํฐ, RESTful API, ์คํ๋ง MVC, ๋ด์ฅ ํฐ์บฃ์ ํฌํจ
• spring-boot-starter-validation: ์๋ฐ ๋น ๊ฒ์ฆ๊ธฐ(ํ์ด๋ฒ๋ค์ดํธ Validator)๋ฅผ ํฌํจ
• spring-boot-starter-batch: ์คํ๋ง ๋ฐฐ์น๋ฅผ ์ํ ์คํํฐ
*****
์คํ๋ง ๋ถํธ ์คํํฐ๋ ๊ฐ๋ฐ์๋ค์ด ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ์ง๋ฉดํ๋ ๋ณต์กํ ์ค์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ค๋๋ค. ํ์ํ ๋ชจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ ๋ฒ์ ์ถ๊ฐํ ์ ์์ด ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ ์ ์ฝํ ์ ์์ต๋๋ค. ๋ํ, ์ผ๊ด๋ ํ๋ก์ ํธ ๊ตฌ์กฐ์ ์ค์ ์ ์ ์งํ ์ ์์ด ์ ์ง๋ณด์๋ ์ฉ์ดํด์ง๋๋ค. ์คํ๋ง ๋ถํธ ์คํํฐ๋ฅผ ํ์ฉํ๋ฉด ๋ ํจ์จ์ ์ด๊ณ ๋น ๋ฅด๊ฒ ํ๋ก์ ํธ๋ฅผ ์์ํ ์ ์์ต๋๋ค.
*****
[์ฐธ์กฐ]
์คํ๋ง ๋ถํธ - ํต์ฌ ์๋ฆฌ์ ํ์ฉ
'๐ป FrameWork(ํ๋ ์์ํฌ) > SpringBoot(์คํ๋ง๋ถํธ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์คํ๋ง ๋ถํธ์ @Conditional ์ด๋ ธํ ์ด์ (0) | 2024.08.08 |
---|---|
์คํ๋ง ๋ถํธ ์๋ ๊ตฌ์ฑ (Auto Configuration) (0) | 2024.08.07 |