๐ซ ์คํ๋ง Bean ๊ทธ๊ฒ์ ๋ํด ์์๋ณด์
๋น(Bean)์ IOC ์ปจํ ์ด๋๊ฐ ๊ด๋ฆฌํ๊ณ ์๋ ์๋ฐ์ ๊ฐ์ฒด๋ฅผ ๋น์ด๋ผ๊ณ ํ๋ค.
(+) new ์ฐ์ฐ์๋ก ์์ฑํ ๊ฐ์ฒด๋ ๋น์ด ์๋!
Spring์์์ ๋น์ ApplicationContext๊ฐ ์๊ณ ์๋ ๊ฐ์ฒด(=ApplicationContext๊ฐ ๋ง๋ค๊ณ ,
๊ทธ ์์ ๋ด๊ณ ์๋ ๊ฐ์ฒด)๋ฅผ ์๊ธฐํ๋๋ฐ IOC ์ปจํ ์ด๋๊ฐ ๊ด๋ฆฌ๊ฐ๋ ํ๋ ๋ฆฌ์คํธ์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ํ์ ์ผ๋ก ๋๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ค.
1๏ธโฃ Component Scan์ ํตํ Bean๋ฑ๋ก
: @Component ์ด๋ ธํ ์ด์ ์ ๋ฑ๋กํ ๊ฒฝ์ฐ์๋ Spring์ด ์ด๋ ธํ ์ด์ ์ ํ์ธํ์ฌ ์ด ๊ฐ์ฒด๋ Bean์ด์ผ!ํ๊ณ ๋ฑ๋กํ๋ค.
*) Component ์ธ์๋ ์ปดํฌ๋ํธ ์ด๋ ธํ ์ด์ ์ ์์์ ๋ฐ๋ @Controller, @Service, @Repository, @Configuration๋ ์ค์บ์ ๋์์ด๋ค.
2๏ธโฃ Bean Config ํ์ผ์ ํตํ ๋ฑ๋ก
: @Configuration๊ณผ @Bean ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฑ๋กํ ์ ์์.
: Configuration ์ญํ ์ ํ๋ ํด๋์ค๋ฅผ @Configuration ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฑ๋กํ๊ณ , @Bean ์ด๋ ธํ ์ด์ ์ ํตํด ๋น์ ๋ฑ๋กํ๋ค.
'๐ฝ Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Spring | DI, IOC๊ฐ ๋ญ๋ฐ (0) | 2022.12.08 |
---|---|
Etc. 01 | Enterprise Application (0) | 2022.12.06 |
Spring skill 01 | ์ธ์ฆ(Authentication)๊ณผ ์ธ๊ฐ(Authorization) (0) | 2022.12.04 |
Spring | ์์์ฑ์ด ๋ญ๋ฐ (1) | 2022.12.01 |
Spring | Annotation์ด ๋ญ๋ฐ (0) | 2022.11.30 |