μμ€ν μ ꡬμΆ, λ΄λΆλ‘μ§, λ°μ΄ν°λ² μ΄μ€μ€κ³, λ°μ΄ν°μ μ²λ¦¬ λ±μ λ΄λΉ
νλ‘ νΈμλ νλ‘κ·Έλ¨ => μ¬μ©μμ μ§μ μνΈμμ©μ νλ νλ‘κ·Έλ¨
λ°±μλ νλ‘κ·Έλ¨ => μꡬλλ μμλ€μ κ°κΉκ² μκ±°λ, λλ μꡬλλ μμλ€κ³Ό κ΅μ ν μ μλ λ₯λ ₯μ κ°μ§λ λ±μ ν΅ν΄ νλ‘ νΈμλ μλΉμ€λ₯Ό κ°μ μ μΌλ‘ μ§μν¨.
-
λμ 보μ΄μ§ μλ κ°λ°μ νλ κ°λ°μ
λ€μ΄λ² λ©μΈμ ν΅ν΄ λ€μ΄κ° λ³Ό μ μλ κ°μ’ κΈ°μ¬λ, μΉν°, μ΄λ©μΌ, μΉ΄ν κ²μλ¬Ό λ±μ 'μλ²'λΌλ κ³³μ μ μ₯μ΄ λμ΄ μλλ°, μ΄ μλ²μ μ 보λ₯Ό μ μ₯νκ³ κΊΌλ΄μ€λ λ Όλ¦¬λ₯Ό λ§λλ κ°λ°μλ₯Ό 'λ°±μλ κ°λ°μ'λΌκ³ λΆλ₯Έλ€.
μ€νλ§ νλ μμν¬λ μλ° νλ«νΌμ μν μ€ν μμ€ μ ν리μΌμ΄μ νλ μμν¬λ‘μ κ°λ¨ν μ€νλ§μ΄λΌκ³ λ νλ€. λμ μΈ μΉμ¬μ΄νΈλ₯Ό κ°λ°νκΈ° μν μ¬λ¬ κ°μ§ μλΉμ€λ₯Ό μ 곡νκ³ μλ€. λνλ―Όκ΅ κ³΅κ³΅κΈ°κ΄μ μΉ μλΉμ€ κ°λ° μ μ¬μ©μ κΆμ₯νκ³ μλ μ μμ λΆ νμ€νλ μμν¬μ κΈ°λ° κΈ°μ λ‘μ μ°μ΄κ³ μλ€.
μ€νλ§ νλ μμν¬λ μ΄λ€ νλ«νΌμμλ μ’ ν©μ μΈ νλ‘κ·Έλλ°κ³Ό μλ° κΈ°λ°μ νλ μν°νλΌμ΄μ¦ μ΄ν리μΌμ΄μ μ Configuration Modelμ μ 곡νλ€. μ€νλ§μ ν΅μ¬μμλ μ΄ν리μΌμ΄μ λ¨μμ μΈνλΌλ₯Ό μ 곡νλ€λ κ². μ€νλ§μ κΈ°μ μ© μ΄ν리μΌμ΄μ μ plumbingμ μ΄μ μ λ§μΆκ³ μλ€. κ·Έλμ κ°λ°νμ νΉμ λ°°ν¬ νκ²½μμ λΆνμν μλμμ΄ μ΄ν리μΌμ΄μ μ λΉμ§λμ€ λ‘μ§μ μ΄μ μ λ§μΆ μ μλ€.
-
- JAVA νλ«νΌμ μν μ€νμμ€ μ΄ν리μΌμ΄μ νλ μμν¬
- μλ° μν°νλΌμ΄μ¦ κ°λ°μ νΈνκ² ν΄μ£Όλ μ€ν μμ€ κ²½λκΈ μ ν리μΌμ΄μ νλ μμν¬
- μλ° κ°λ°μ μν νλ μμν¬λ‘ μ’ μ κ°μ²΄λ₯Ό μμ±ν΄μ£Όκ³ , 쑰립ν΄μ£Όλ λꡬ
- POJO(Plain Old Java Object) BEAN CONTAINNER
-
-
ν¬κΈ°μ λΆνμ μΈ‘λ©΄μμ κ²½λ
-
μ μ΄ μν(IoC)λ₯Ό ν΅νμ¬ μ΄ν리μΌμ΄μ μ λμ¨ν κ²°ν©μ λλͺ¨
: 컨νΈλ‘€μ μ μ΄κΆμ΄ μ¬μ©μκ° μλλΌ νλ μμν¬μ μμ΄μ νμμ λ°λΌ μ€νλ§μμ μ¬μ©μμ μ½λλ₯Ό νΈμΆ
-
κ΄μ μ§ν₯(AOP) νλ‘κ·Έλλ°μ μν νλΆν μ§μμ ν¨
: νΈλμμ μ΄λ λ‘κΉ , 보μκ³Ό κ°μ΄ μ¬λ¬ λͺ¨λμμ 곡ν΅μ μΌλ‘ μ¬μ©νλ κΈ°λ₯μ κ²½μ° ν΄λΉ κΈ°λ₯μ λΆλ¦¬νμ¬ κ΄λ¦¬ν μ μμ
-
μμ‘΄μ± μ£Όμ (DI : Dependency Injection)μ μ§μν¨
: κ°κ°μ κ³μΈ΅μ΄λ μλΉμ€λ€ κ°μ μμ‘΄μ±μ΄ μ‘΄μ¬ν κ²½μ° νλ μμν¬κ° μλ‘ μ°κ²°μμΌμ€λ€.
-
PSA(Portable Service Abstraction)
: μ€νλ§μ λ€λ₯Έ μ¬λ¬ λͺ¨λμ μ¬μ©ν¨μ μμ΄μ λ³λμ μΆμν λ μ΄μ΄λ₯Ό μ 곡ν©λλ€. μλ₯Ό λ€μ΄ JPAλ₯Ό μ¬μ©ν λμμ Spring JPAλ₯Ό μ¬μ©νμ¬ μΆμν νλ―λ‘ μ€μ ꡬνμ μμ΄μ Hibernateλ₯Ό μ¬μ©νλ EclipseLinkλ₯Ό μ¬μ©νλ μ¬μ©μλ μ΄ λͺ¨λμ μμ‘΄ μμ΄ νλ‘κ·Έλ¨μ μ§μ€ν μ μμ΅λλ€.
-
Plain Object Java Object λ°©μμ νλ μμν¬
: κΈ°λ³Έμ μΌλ‘ μ¬μ©μκ° λ§λ€μ΄λΈ κ°μ²΄λ₯Ό μλ―Έν¨. μ€νλ§μ μ¬μ©μκ° λ§λ€ κ°μ²΄λ€μ λν΄μλ λΌμ΄νμ¬μ΄ν΄ κ΄λ¦¬λ₯Ό μμν΄μ μννλ©°, μ΄λ€μ μ‘°ν©μΌλ‘ μ΄ν리μΌμ΄μ μ λ§λ€ μ μμ. μΌλ°μ μΈ J2EE νλ μμν¬μ λΉν΄ ꡬνμ μν΄ νΉμ ν μΈν°νμ΄μ€λ₯Ό ꡬννκ±°λ μμμ λ°μ νμκ° μμ΄ κΈ°μ‘΄μ μ‘΄μ¬νλ λΌμ΄λΈλ¬λ¦¬ λ±μ μ§μνκΈ°μ μ©μ΄νκ³ κ°μ²΄κ° κ°λ³λ€.
-
κ°λ¨ν μ»΄ν¬λνΈλ‘ 볡μ‘ν μ΄ν리μΌμ΄μ μ ꡬμ±νκ³ μ€μ ν μ μμ
-
μ΄ν리μΌμ΄μ κ°μ²΄μ μλͺ μ£ΌκΈ°μ μ€μ μ ν¬ν¨νκ³ κ΄λ¦¬νλ€λ μ μμ μΌμ’ μ 컨ν μ΄λλΌκ³ ν μ μμ
-
-
-
: μ€νλ§μ κ°μ₯ μ€μνκ³ ν΅μ¬μ μΈ κΈ°λ₯μΌλ‘μ μλ°μ λ°μ(reflection)μ μ΄μ©ν΄μ κ°μ²΄μ μλͺ μ£ΌκΈ°λ₯Ό κ΄λ¦¬νκ³ μμ‘΄μ± μ£Όμ (Dependency Injection)μ ν΅ν΄ κ° κ³μΈ΅μ΄λ μλΉμ€λ€κ°μ μμ‘΄μ±μ λ§μΆ°μ€λ€. μ΄λ¬ν κΈ°λ₯λ€μ μ£Όλ‘ νκ²½μ€μ μ λ΄λΉνλ XML νμΌμ μν΄ μ€μ λκ³ μνλλ€.
-
: κ΄μ μ§ν₯ν νλ‘κ·Έλ¨μΌλ‘ μ¬μ©μλ€μ΄ νΈλμ μ μ²λ¦¬/λ‘κΉ /μμΈ μ²λ¦¬λ€μ λ‘μ§μ 곡ν΅μΌλ‘ μ²λ¦¬ν μ μλ κΈ°λ₯μ μ§μν¨. ν΄λΉ κΈ°λ₯μ μ μ¬μ©νλ©΄ λΉμ§λμ€λ‘μ§μ κΈ°ν 곡ν΅λͺ¨λμ΄ μμ΄λ κ²μ λ°©μ§νμ¬ λΉμ§λμ€ λ‘μ§μ μ§μ€ν μ μλλ‘ ν©λλ€.
-
: μ€νλ§μ λ°μ΄ν°λ² μ΄μ€μ μ μνκ³ μλ£λ₯Ό μ μ₯ λ° μ½μ΄μ€κΈ° μν μ¬λ¬ κ°μ§ μ λͺ ν λΌμ΄λΈλ¬λ¦¬, μ¦ JDBC, iBATIS(MyBatis), νμ΄λ²λ€μ΄νΈ λ±μ λν μ§μ κΈ°λ₯μ μ 곡νμ¬ λ°μ΄ν°λ² μ΄μ€ νλ‘κ·Έλλ°μ μ½κ² μ¬μ©ν μ μλ€.
-
: μ€νλ§μ μΆμνλ νΈλμμ κ΄λ¦¬λ₯Ό μ§μνλ©° XML μ€μ νμΌ λ±μ μ΄μ©ν μ μΈμ μΈ λ°©μ λ° νλ‘κ·Έλλ°μ ν΅ν λ°©μμ λͺ¨λ μ§μνλ€.
-
: μ€νλ§μ μΉ νλ‘κ·Έλ¨λ° κ°λ° μ κ±°μ νμ€μ μΈ λ°©μμΈ Spring MVCλΌ λΆλ¦¬λ λͺ¨λΈ-λ·°-컨νΈλ‘€λ¬(MVC) ν¨ν΄μ μ¬μ©νλ€. DispatcherServletμ΄ Controller μν μ λ΄λΉνμ¬ κ°μ’ μμ²μ μ μ ν μλΉμ€μ λΆμ°μμΌμ£Όλ©° μ΄λ₯Ό κ° μλΉμ€λ€μ΄ μ²λ¦¬λ₯Ό νμ¬ κ²°κ³Όλ₯Ό μμ±νκ³ κ·Έ κ²°κ³Όλ λ€μν νμμ View μλΉμ€λ€λ‘ νλ©΄μ νμλ μ μλ€.
-
: μ€νλ§μ νΉμ μκ°λμ μ€ννκ±°λ λμ©λμ μλ£λ₯Ό μ²λ¦¬νλλ° μ°μ΄λ μΌκ΄ μ²λ¦¬(Batch Processing)μ μ§μνλ λ°°μΉ νλ μμν¬λ₯Ό μ 곡νλ€. κΈ°λ³Έμ μΌλ‘ μ€νλ§ λ°°μΉλ Quartz κΈ°λ°μΌλ‘ λμνλ€.
-