= μ μ΄μ μμ
κ°λ°μκ° μλ Spring Container κ° κ°μ²΄λ₯Ό κ΄λ¦¬νλ κ²!
μ€νλ§μ μ¬μ©νμ§ μλ λ€λ©΄
1) κ°λ°μκ° μ§μ new λ₯Ό μ¬μ©νμ¬ κ°μ²΄λ₯Ό μμ±
ex)
public void ObjectClass{
a = new object();
}
2) object κ° heap λ©λͺ¨λ¦¬ 곡κ°μ μ¬λΌκ°κ³ , μ΄μ μ£Όμλ reference λ³μ a
3) a λ object λ₯Ό μ μΈν λ©μλ λ΄λΆ ObjectClass μμ κ΄λ¦¬λλ€.
-> λ€λ₯Έ λ©μλμμ κ°μ²΄λ₯Ό 곡μ νκΈ° νλ€μ΄μ§λ€.
μ€νλ§μ μ¬μ©νλ€λ©΄
1) κ°λ°μκ° μ€λΈμ νΈλ€μ λ§λ€μ΄ λμΌλ©΄
2) Spring μ΄ μ΄ μ€λΈμ νΈλ€μ μ€μΊνμ¬ μ§μ heap λ©λͺ¨λ¦¬κ³΅κ°μ λμ΄λ€.
3) ν΄λΉ μ€λΈμ νΈλ€μ Springμ΄ κ΄λ¦¬νλ€. => IOC
= μμ‘΄μ± μ£Όμ
Spring μ μν΄ λ©λͺ¨λ¦¬ 곡κ°μ μ¬λΌμ¨ κ°μ²΄λ€μ μνλ ν΄λμ€μ λ©μλμ κ°μ Έμμ μ¬μ©ν μ μλ€.
=> DI
κ°μ²΄λ₯Ό μ§μ μμ±νλ κ²μ΄ μλ, μΈλΆμμ μμ± ν μ£Όμ μμΌ μ£Όλ λ°©λ²