<aside> ๐ก ์ ์ด์ ์ญ์ (IoC, Inversion of Control)์ ์ผ๋ฐ์ ์ธ ํ๋ก๊ทธ๋๋ฐ์์, ํ๋ก๊ทธ๋จ์ ์ ์ด ํ๋ฆ ๊ตฌ์กฐ๊ฐ ๋ค๋ฐ๋๋ ๊ฒ์ ์๋ฏธํ๋ค.
</aside>
โ ๊ฐ์ฒด์ ์์ฑ๊ณผ ๊ด๋ฆฌ, ๊ฐ์ฒด ๊ฐ์ ์์กด์ฑ ์ฒ๋ฆฌ ๋ฑ์ ํ๋ ์์ํฌ์์ ๋์ ์ฒ๋ฆฌํด์ฃผ๋ ๊ฒ์ด IoC์ ๋ํ์ ์ธ ์์ด๋ค.
<aside> ๐ก IoC Container๋ IoC๋ฅผ ๊ตฌํํ ๊ตฌ์ฒด์ ์ธ ํ๋ ์์ํฌ๋ฅผ ๋งํ๋ค. IoC Container๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ฒด์ ์์ฑ, ์ด๊ธฐํ, ์์กด์ฑ ์ฒ๋ฆฌ ๋ฑ์ ์๋์ผ๋ก ์ํํ ์ ์๋ค.
</aside>
โ ๋ํ์ ์ธ IoC Container๋ก๋ Spring Framework์ ApplicationContext๊ฐ ์๋ค.

<aside> ๐ก Bean์ Spring IoC Container์์ ๊ด๋ฆฌ๋๋ ๊ฐ์ฒด๋ฅผ ๋งํ๋ค.
</aside>
โ ์คํ๋ง์ Bean์ ์์ฑํ๊ณ , ์ด๊ธฐํํ๊ณ , ์์กด์ฑ ์ฃผ์
ํ๊ณ , ์ ๊ฑฐํ๋ ๋ฑ์ ์ผ์ IoC Container๋ฅผ ํตํด ์๋์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ค.
<aside> ๐ก BeanFactory๋ Spring IoC Container์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ํํ๋ก, Bean์ ์์ฑ, ์ด๊ธฐํ, ์ฐ๊ฒฐ, ์ ๊ฑฐ ๋ฑ์ ๋ผ์ดํ์ฌ์ดํด์ ๊ด๋ฆฌํ๋ค.
</aside>
โ ์ด๋ฅผ ์ํด Configuration Metadata๋ฅผ ์ฌ์ฉํ๋ค.
<aside> ๐ก BeanFactory๊ฐ IoC๋ฅผ ์ ์ฉํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ค์ ์ ๋ณด์ด๋ค.
</aside>