μλ° νλ«νΌμ μν μ€ν μμ€ μ ν리μΌμ΄μ
νλ μμν¬λ‘ κ°λ¨νκ² μ€νλ§(Spring)μ΄λΌκ³ λ λΆλ¦°λ€.
λμ μΈ μΉ μ¬μ΄νΈλ₯Ό κ°λ°νκΈ° μν μ¬λ¬ κ°μ§ μλΉμ€λ₯Ό μ 곡νκ³ μμΌλ©°
λνλ―Όκ΅ κ³΅κ³΅κΈ°κ΄μ μΉ μλΉμ€ κ°λ° μ μ¬μ©μ κΆμ₯νκ³ μλ
μ μμ λΆ νμ€ νλ μμν¬(Spring MVC Project κΈ°λ° νλ μμν¬)μ κΈ°λ° κΈ°μ λ‘μ μ°μ΄κ³ μλ€.
IOC (Inversion of Control) μ μ΄ λ°μ |
컨νΈλ‘€μ μ μ΄κΆμ΄ κ°λ°μκ° μλλΌ νλ μμν¬μ μλ€λ λ»μΌλ‘ κ°μ²΄μ μμ±λΆν° λͺ¨λ μλͺ μ£ΌκΈ°μ κ΄λ¦¬κΉμ§ νλ μμν¬κ° μ£Όλνκ³ μλ€. κ°μ²΄λ₯Ό μμ±νκ³ , μ§μ νΈμΆνλ νλ‘κ·Έλ¨μ΄ μλλΌ, λ§λ€μ΄λ μμμ νΈμΆν΄μ μ¬μ©νλ€. |
DI (Dependency Injection) μμ‘΄μ± μ£Όμ |
μ€μ νμΌμ΄λ μ΄λ Έν μ΄μ μ ν΅ν΄ κ°μ²΄κ°μ μμ‘΄ κ΄κ³λ₯Ό μ€μ νμ¬ κ°λ°μκ° μ§μ μμ‘΄νλ κ°μ²΄λ₯Ό μμ±ν νμκ° μλ€. |
POJO κΈ°λ° νλ μμν¬ (Plain Old Java Object) |
J2EE, EJBμ κ°μ νΉμ κΈ°μ μ΄λ λΌμ΄λΈλ¬λ¦¬μ λ΄μ©μ μμλ°μ ν΄λμ€λ₯Ό ꡬνν μ§ μκ³ μΌλ°μ μΈ κΈ°λ³Έ κΈ°λ₯λ§μ κ°μ§ μμν μλ° κ°μ²΄λ₯Ό μλ―Ένλ€. νΉμ ν΄λμ€μ μ’ μλμ§ μμΌλ―λ‘ μλ°μ κ°μ²΄μ§ν₯μ μ€κ³κ° μ¬μμ§κ³ , μ½λκΈΈμ΄ κ°μ, μ μ§λ³΄μμ± μ¦κ°, κΈ°μ‘΄ Java API, λΌμ΄λΈλ¬λ¦¬ μ§μμ μ©μ΄νλ€. |
Spring AOP (Aspect Oriented Programming) κ΄μ μ§ν₯ νλ‘κ·Έλλ° |
νΈλμμ , λ‘κΉ , 보μ λ± μ¬λ¬ λͺ¨λ, μ¬λ¬ κ³μΈ΅μμ 곡ν΅μΌλ‘ νμλ‘ νλ κΈ°λ₯μ κ²½μ° ν΄λΉ κΈ°λ₯λ€μ λΆλ¦¬νμ¬ κ΄λ¦¬νλ€ |
Spring Framework μμλ ν΄λΌμ΄μΈνΈμ νλ©΄μ νννκΈ° μν Viewμ μλΉμ€λ₯Ό μννκΈ° μν κ°λ° λ‘
μ§ λΆλΆμ λλλ MVC2 ν¨ν΄μ μ§μνλ€.
λν Model, View, Controller μ¬μ΄μ μμ‘΄ κ΄κ³λ₯Ό DI 컨ν
μ΄λμμ κ΄λ¦¬νμ¬ μ μ°ν μΉ μ ν리μΌμ΄μ
μ
μ½κ² ꡬν λ° κ°λ°ν μ μλ€
: μμ²μ 컨νΈλ‘€λ¬λ‘ μ λ¬ + μλ΅
: μ΄λ€ μμ²μ μ΄λ€ ν΄λμ€/ λ©μλλ‘ μ°κ²°νλ μ§ μ μ΄νλ κ°μ²΄
: Controllerμμ λ°νλ λ¬Έμμ΄("common/main")
μ λ€μ κ²½λ‘(/WEB-INF/views), νμ₯μ(.jsp)λ₯Ό λΆμ¬μ
jspνμΌμ κ²½λ‘λ₯Ό μ§μ ν ν forward(μμ² μμ)μ νλ κ°μ²΄