## `Spring` μ΄λ?
**μν°νλΌμ΄μ¦ μ ν리μΌμ΄μ
μ κ°λ°νλ €κ³ κ°λ°λ κ²½λ νλ μμν¬ λͺ¨μ**. κΈ°μ‘΄ 볡μ‘νκ³ νμμ μ΄λ EJBμ λμμΌλ‘ κ°λ°λ μ€νμμ€ νλ μμν¬μ΄λ€. νΉμ κΈ°μ μ ꡬνν νμ μμ΄ μμ μλ° νλ‘κ·Έλλ°μ νλ― κ°λ°ν μ μλ€λ μ (1), μ½κ² νμ₯ν μ μλ μνκ³κ° κ°μΆμ΄μ‘λ€λ μ (2), μ€ν μμ€ κΈ°μ¬ νλμ΄ μμ±νμ¬ μ μ§ λ³΄μκ° μ λλ€λ μ (3), κ·Έλ¬λ©΄μλ λͺ¨νμ¬μΈ VMWareμ κ΄λ¦¬λ₯Ό ν΅ν΄ νλ μμν¬μ μ§μ΄ 보μ₯μ΄ λλ€λ μ (4) λ± μ λ§μ μ₯μ μ κ°μΆ° **μ¬μ€μ(de facto) μλ° νμ€ κ°λ° νλ μμν¬**μ΄λ€. νΉν κ΅λ΄μ κ²½μ° [[1. μ μμ λΆ νλ μμν¬λ|μ μμ λΆ νλ μμν¬]]μ μ‘΄μ¬λ‘ μΈν΄ μλ° κ°λ°μλ κ³§ μ€νλ§ κ°λ°μλ₯Ό μλ―ΈνκΈ°λ νλ€.
## Springμ νΉμ§
### POJO κΈ°λ°μ κ²½λ 컨ν
μ΄λ
μ€νλ§μ κ°μ₯ ν° νΉμ§μ [[IT μ©μ΄ μ 리 π#`POJO`|POJO]] μ μ€νλ§ μ»¨ν
μ΄λμ΄λ€. μ€νλ§μμ κ°λ°μλ μμ μλ° νλ‘κ·Έλλ°μ νλ―μ΄ κ°μ²΄λ₯Ό κ°λ°ν μ μκ³ , κ·Έλ κ² κ°λ°λ κ°μ²΄λ€μ μλͺ
μ£ΌκΈ°λ μ€νλ§ μ»¨ν
μ΄λκ° κ΄λ¦¬νλ€. μ΄μ κ΄λ ¨λ κ°λ
μ΄ μ€νλ§μ 3 μμ μ€ νλμΈ [[A. μ μ΄μ μμ (Inversion of Control)|μ μ΄μ μμ (IoC)]]μ΄λ€.
![[IT μ©μ΄ μ 리 π#`POJO`]]
### λͺ¨λμ νλ μμν¬
μ€νλ§μ μν°νλΌμ΄μ¦ μ ν리μΌμ΄μ
κ°λ°μ νμν μ¬λ¬ κΈ°λ₯μ ν¬ν¨νλ€. μ΄ κΈ°λ₯λ€μ μ±κ²©μ λ°λΌ λΆλ₯λμ΄ `Spring Data`, `Spring Web` κ°μ λͺ¨λλ‘ λ¬Άμ¬ μλ€. λλΆμ κ°λ°μλ νμν λͺ¨λλ§ μ ν리μΌμ΄μ
μμ λΆμ°©νμ¬ μ¬μ©ν μ μλ€.
### λμ νμ₯μ±κ³Ό λ²μ©μ±
μμ [[5. Springκ³Ό νΉμ§ πΏ#λͺ¨λμ νλ μμν¬|λͺ¨λμ νλ μμν¬]]μ λΉμ·ν μ₯μ μΌλ‘ μ€νλ§μλ λ§μ κΈ°λ₯μ μ 곡νλ λ€μν νλ‘μ νΈκ° μ‘΄μ¬νλ€. μΈμ¦, μΈκ°λ₯Ό μν μ€νλ§ μν리ν°μ λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μν μ€νλ§ λ°μ΄ν° JDBC λ± λ§μ νλ‘μ νΈλ₯Ό ν΅ν΄ νμν κΈ°λ₯μ λΉ λ₯΄κ³ μ½κ² ꡬνν μ μλ€.