@Bean vs @Component
๐ ๊ณตํต์
Bean์ ์์ฑํ๋ ์ด๋ ธํ ์ด์ .
๐ต ์ฐจ์ด์
@Bean ์ด๋
ธํ
์ด์
์ docs๋ฅผ ๊ฐ๋ณด๋ฉด ElementType.METHOD, ElementType.ANNOTATION_TYPE
๊ฐ ๋์ด์๊ณ , @Component ์ด๋
ธํ
์ด์
์ docs๋ฅผ ๊ฐ๋ณด๋ฉด ElementType.TYPE
์ผ๋ก ๋์ด์๋ค.
๋ฐ๋ผ์ ๊ฐ๋ฐ์๊ฐ ์ง์ ์์ ์ด ๊ฐ๋ฅํ ํด๋์ค์๋ @Component๋ฅผ ์ฌ์ฉํ๊ณ , ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์๋ ํด๋น ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ ๋ฉ์๋ ์์ @Bean์ ์ฌ์ฉํ๋ค.
๊ฐ๋จํ๊ฒ @Bean ์ด๋ ธํ ์ด์ ์ method ์์ ๋ถ์ผ ์ ์๊ณ , @Component ์ด๋ ธํ ์ด์ ์ class์์ ๋ถ์ผ ์ ์๋ค.