๐ ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์
์ด์ ์ํ์ด ๋๋ฌ์ผ๋ ๋ค์ ๊ณต๋ถํด๋ณด๊ฒ ์ต๋๋ค...
์์งํ ๋ญ๊ฐ ๋ญ์ง ํ๋๋ ๋ชจ๋ฅด๊ฒ ์ด์ ํํ ์ด์ฌํ ์์๋ณผ๊ฒ์
- Controller ๋ฅผ ํตํด์ ์ธ๋ถ ์์ฒญ์ ๋ฐ๊ณ
- Service ์์ ๋น์ง๋์ค ๋ก์ง์ ๋ง๋ค๊ณ
- Repository์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ
ํ๋๊ฒ ์ผ๋ฐ์ ์ธ ํจํด์ด๋ผ๊ณ ํฉ๋๋ค
@Autowired
์์ฒ๋ผ ์ฐ๊ฒฐํด ์ค ๋ ์ด๋ค
- ์ปจํธ๋กค๋ฌ ์์ฑ์์์
- ๋ฉค๋ฒ ์ปจํธ๋กค๋ฌ๊ฐ ์์ฑ์ด ๋ ๋ ์คํ๋ง ๋น์ ๋ฑ๋ก๋์ด ์๋ ๋ฉค๋ฒ ์๋น์ค ๊ฐ์ฒด๋ฅผ ๊ฐ์ ธ๋ค ์ค๋ค. (์์กด๊ด๊ณ ์ค์ )
- ์๋น์ค์์
- ์๋น์ค๋ฅผ ์์ฑํ ๋ repository๋ฅผ ๊ฐ์ ธ๋ค ์ค๋ค
์คํ๋ง ๋น์ ๋ฑ๋กํ๋ 2๊ฐ์ง ๋ฐฉ๋ฒ
1. ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ (์์์ ํ ๋ฐฉ๋ฒ)
- ์ปดํฌ๋ํธ ์ค์บ ์๋ฆฌ
- @Component ์ ๋ ธํ ์ด์ ์ด ์์ผ๋ฉด ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก๋๋ค.
- @Controller ์ปจํธ๋กค๋ฌ๊ฐ ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก๋ ์ด์ ๋ ์ปดํฌ๋ํธ ์ค์บ ๋๋ฌธ์ด๋ค.
- @Component ๋ฅผ ํฌํจํ๋ ๋ค์ ์ ๋
ธํ
์ด์
๋ ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก๋๋ค.
- @Controller
- @Service
- @Repository
2. ์๋ฐ ์ฝ๋๋ก ์ง์ ์คํ๋ง ๋น ๋ฑ๋กํ๊ธฐ
์ด๋ ๊ฒ ์ง์ @Bean ํ๊ทธ๋ฅผ ์ฌ์ฉํด์ ์์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ฐ๊ฒฐ์ ํ ์ ์์ต๋๋ค.
๊ทธ๋๋ Controller์์๋ ์์ ๋์ผํ๊ฒ ์ปดํฌ๋ํธ ์ค์บ์ ํด์ผ ํฉ๋๋ค !!
++ Dependency Injection ๋ฐฉ๋ฒ
- ํ๋ ์ฃผ์
- setter ์ฃผ์
- ์์ฑ์ ์ฃผ์
์์กด๊ด๊ณ๊ฐ ์คํ์ค์ ๋์ ์ผ๋ก ๋ณํ๋ ๊ฒฝ์ฐ๋ ์์ผ๋ฏ๋ก ์์ฑ์ ์ฃผ์ ์ ๊ถ์ฅ
++ ์ค๋ฌด์์๋ ์ฃผ๋ก ์ ํํ๋ ์ปจํธ๋กค๋ฌ, ์๋น์ค, ๋ฆฌํฌ์งํ ๋ฆฌ ๊ฐ์ ์ฝ๋๋ ์ปดํฌ๋ํธ ์ค์บ์ ์ฌ์ฉ.
๊ทธ๋ฆฌ๊ณ ์ ํํ ๋์ง ์๊ฑฐ๋, ์ํฉ์ ๋ฐ๋ผ ๊ตฌํ ํด๋์ค๋ฅผ ๋ณ๊ฒฝํด์ผ ํ๋ฉด ์ค์ ์ ํตํด ์คํ๋ง ๋น์ผ๋ก ๋ฑ๋ก.
๋ญ๊ฐ ์ค๋๋ง์ ํ๋๊น ๋ด์ฉ์ ์งง์๋ฐ ์ด๋ ค์์ ์ฒ์๋ถํฐ ์ญ ๋ณต์ต์ ํด์ผ ํ ๊ฒ ๊ฐ์์... ํ์ดํ
'WINK-(Web & App) > Spring Boot ์คํฐ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[2025 1ํ๊ธฐ ์คํ๋ง๋ถํธ ์คํฐ๋] ๋ฅํ์ค #3&4์ฃผ์ฐจ (0) | 2025.05.06 |
---|---|
[2025 1ํ๊ธฐ ์คํ๋ง๋ถํธ ์คํฐ๋] ์ ๋ค์ #4์ฃผ์ฐจ (1) | 2025.05.04 |
[2025 1ํ๊ธฐ ์คํ๋ง๋ถํธ ์คํฐ๋] ๊ณ ์ค์ #4์ฃผ์ฐจ (1) | 2025.05.04 |
[2025 1ํ๊ธฐ ์คํ๋ง ๋ถํธ ์คํฐ๋] ๋จ์ค์ฐฌ #4์ฃผ์ฐจ (0) | 2025.05.03 |
[2025 1ํ๊ธฐ ์คํ๋ง๋ถํธ ์คํฐ๋] ๊น๋ฏผ์ #4์ฃผ์ฐจ (0) | 2025.05.03 |