Dev-Kyuu

๐Ÿซ˜ ์Šคํ”„๋ง 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 ์–ด๋…ธํ…Œ์ด์…˜์„ ํ†ตํ•ด ๋นˆ์„ ๋“ฑ๋กํ•œ๋‹ค.

 

profile

Dev-Kyuu

@kyuu_ng

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!