๋ฐ์ํ
Spring Cotainer ๐ญ
- ์คํ๋ง์ด ์์๋ ๋ ์คํ๋ง ์ปจํ
์ด๋ ๐ญ ๋ผ๋ ํต์ด ์๊ธด๋ค.
- ์คํ๋ง ์ปจํ
์ด๋์ ํด๋์ค๋ฅผ ๋ฑ๋กํด์ผ ํ๋๋ฐ, ์ด ๋ ์ฌ์ฉ๋๋ ๊ฒ ์คํ๋ง ๋น๐ฅ ์ด๋ค.
- ๐ก ์คํ๋ง ๋น์ ๋ฑ๋กํ๋ ๋๊ฐ์ง ๋ฐฉ๋ฒ
- ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ .
- ์๋ฐ ์ฝ๋๋ก ์ง์ ์คํ๋ง ๋ฑ๋กํ๊ธฐ.
- ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ .
- ๋จผ์ 1๋ฒ ๋ฐฉ๋ฒ์ ์์๋ณด์.
- ๐ก ์คํ๋ง ๋น์ ๋ฑ๋กํ๋ ๋๊ฐ์ง ๋ฐฉ๋ฒ
@Component
- ์ด๋ @Controller @ Service @Repository ๊ฐ ๋ถ์ ํด๋์ค ๊ฐ์ฒด๋ฅผ ์คํ๋ง์ ๋ด์ ๊ด๋ฆฌํ๋ค.
์ด๊ฒ์ ์คํ๋ง ๋น์ด ๊ด๋ฆฌํ๋ค ๊ณ ํ๋ค. - ์ฌ์ค ์ด ์ด๋ ธํ ์ดํ ์ด์ ๋ค์ ์ปดํฌ๋ํธ @Component ๋ฅผ ์ด์ฉํด ๋ง๋ค์ด์ก๋ค. ์คํ๋ง์ด ์ด ์ปดํฌ๋ํธ๋ค์ ๊ฐ์ฒด๋ก ํ๋์ฉ ๋ง๋ค์ด ์คํ๋ง ์ปจํ ์ด๋์ ๋ฑ๋กํ๋ค.
- ์ปดํฌ๋ํธ ์ค์บ์ด ์๋ฃ๋์๋ค.
@Autowired
: Controller, Service, Repository ์ฌ์ด์ ์์กด์ฑ ์ฃผ์ .
- web browser → Controller → Service → repository → DB ์์ผ๋ก ํธ์ถํ๋๋ฐ
- ์ปจํธ๋กค๋ฌ์์ ํธ์ถํ๋ ์๋น์ค์ @Autowired ์ด๋
ธํ
์ด์
์ ๋ถ์ฌ์ฃผ๊ณ
- ์๋น์ค์์ ํธ์ถํ๋ ๋ฆฌํฌ์งํ ๋ฆฌ์ @Autowired ์ด๋
ธํ
์ด์
์ ๋ถ์ฌ์ค๋ค.
- ์คํ๋ง์ @Autowired๋ฅผ ์ฐพ์ ์ฐ๊ฒฐ์์ผ์ค๋ค. ๋ฐ๋ผ์ ์์กด์ฑ์ด ์ฃผ์ ๋์ด ์ฐ๊ด๊ด๊ณ๊ฐ ๋๋ค.
๐ก ์ปดํฌ๋ํธ ๊ฐ์ฒด(์ปจํธ๋กค๋ฌ, ์๋น์ค, ๋ฆฌํฌ์งํ ๋ฆฌ)๋ ์ฐธ๊ณ ๋ก ๋ฉ์ธ ํด๋(ex. hellospring)์์๋ง ๋ฑ๋ก ๊ฐ๋ฅํ๋ค.
์๋ํ๋ฉด HelloSrpingApplicationํด๋์ค์ ์ด๋ ธํ ์ด์ @SpringBootApplication์ด ์ปดํฌ๋ํธ ์ค์บ @ComponentScan์ด๊ธฐ ๋๋ฌธ์ด๋ค.
๐ก ์คํ๋ง ์ปจํ ์ด๋๋ ์คํ๋ง๋น์ ๋ฑ๋กํ ๋, Singletone์ผ๋ก ๋ฑ๋กํ๋ค.
๋ฐ๋ผ์ ์ ์ผํ๊ฒ ํ๋๋ง ๋ฑ๋กํ ์ ์๋ค. ๋ฐ๋ผ์ ๊ฐ์ ์คํ๋ง ๋น์ด๋ฉด ๋ชจ๋ ๊ฐ์ ์ธ์คํด์ค์ด๋ค.
โป ์ฐธ์กฐ : https://www.inflearn.com/roadmaps/373
๋ฐ์ํ
'๐ Spring > ๐ Spring Boot' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[SpringBoot][Thymeleaf]ํ์๊ด๋ฆฌ-์น MVC๊ฐ๋ฐ (0) | 2025.01.07 |
---|---|
[SpringBoot]์คํ๋ง ๋น ๋ฑ๋ก:2.์๋ฐ์ฝ๋ (0) | 2025.01.06 |
[SpringBoot][JUnit]ํ์๊ด๋ฆฌ-์๋น์ค์ ํ ์คํธ (2) | 2025.01.05 |
[SpringBoot][JUnit]ํ์๊ด๋ฆฌ-๋๋ฉ์ธ๊ณผ ๋ฆฌํฌ์งํ ๋ฆฌ ๊ทธ๋ฆฌ๊ณ ํ ์คํธ (0) | 2025.01.04 |
[SpringBoot]ํ์๊ด๋ฆฌ-๋น์ง๋์ค ์๊ตฌ์ฌํญ ์ ๋ฆฌ (0) | 2025.01.04 |