Home
>
Spring
>
π[Spring] μΌλ°μ μΈ μΉ μ ν리μΌμ΄μ
κ³μΈ΅ ꡬ쑰μ ν΄λμ€ μμ‘΄κ΄κ³.
Spring
Framework
π[Spring] μΌλ°μ μΈ μΉ μ ν리μΌμ΄μ
κ³μΈ΅ ꡬ쑰μ ν΄λμ€ μμ‘΄κ΄κ³.
1οΈβ£ μΌλ°μ μΈ μΉ μ ν리μΌμ΄μ
κ³μΈ΅ ꡬ쑰.

- Controller : μΉ MVCμ Controller μν .
- μ¬μ©μμ μμ²μ λ°μ μ΄λ₯Ό μ²λ¦¬ν λΉμ¦λμ€ λ‘μ§(μλΉμ€ λ μ΄μ΄)μ μ λ¬νκ³ , κ·Έ κ²°κ³Όλ₯Ό λ€μ μ¬μ©μμκ² μλ΅νλ μν μ ν©λλ€.
- μ£Όλ‘ HTTP μμ²μ μ²λ¦¬νκ³ , μ¬λ°λ₯Έ μλ΅μ μμ±ν©λλ€.
- 컨νΈλ‘€λ¬λ μ¬μ©μλ‘λΆν° μ
λ ₯μ λ°μ ν΄λΉ μ
λ ₯μ μλΉμ€ λ μ΄μ΄λ‘ μ λ¬νκ³ , μλΉμ€ λ μ΄μ΄μμ μ²λ¦¬λ κ²°κ³Όλ₯Ό μ¬μ©μμκ² λ°νν©λλ€.
- μ΄λ μ£Όλ‘ μΉ μ ν리μΌμ΄μ
μ μνΈν¬μΈνΈ(μ:
'/login'
, '/signup'
μ κ°μ URL)μ λμλ©λλ€.
- Service : ν΅μ¬ λΉμ¦λμ€ λ‘μ§ κ΅¬ν.
- λΉμ¦λμ€ λ‘μ§μ μ²λ¦¬νλ κ³μΈ΅μ
λλ€.
- 컨νΈλ‘€λ¬μ 리ν¬μ§ν 리 μ¬μ΄μμ μ€κ° μν μ νλ©°, μ¬λ¬ 리ν¬μ§ν 리λ‘λΆν° λ°μ΄ν°λ₯Ό κ°μ Έμ€κ±°λ κ°κ³΅νκ³ , μ΄λ₯Ό λ€μ 컨νΈλ‘€λ¬μ μ λ¬ν©λλ€.
- μλΉμ€ κ³μΈ΅μ μ ν리μΌμ΄μ
μ ν΅μ¬ λΉμ¦λμ€ λ‘μ§μ΄ μμΉνλ κ³³μ
λλ€.
- μλ₯Ό λ€μ΄, μ¬μ©μ μΈμ¦, κ²°μ μ²λ¦¬, μ΄λ©μΌ μ μ‘ λ±μ μ£Όμ κΈ°λ₯μ΄ μ΄ κ³μΈ΅μμ μ²λ¦¬λ©λλ€.
- Repository: λ°μ΄ν°λ² μ΄μ€μ μ κ·Ό, λλ©μΈ κ°μ²΄λ₯Ό DBμ μ μ₯νκ³ κ΄λ¦¬.
- λ°μ΄ν°λ² μ΄μ€μ μνΈμμ©νλ κ³μΈ΅μ
λλ€.
- λ°μ΄ν°μ μ μ₯, κ²μ, κ°±μ , μμ λ±μ μμ
μ μ²λ¦¬νλ©°, λ°μ΄ν°λ² μ΄μ€μμ μ§μ μ μΈ ν΅μ μ λ΄λΉν©λλ€.
- 리ν¬μ§ν 리λ λ°μ΄ν°λ₯Ό μ²λ¦¬νκΈ° μν SQL 쿼리λ ORM(Object-Relational Mapping) μμ
μ λ΄λΉν©λλ€.
- μ΄ κ³μΈ΅μ μλΉμ€ κ³μΈ΅μμ νμν λ°μ΄ν°λ₯Ό κ°μ Έμ€κ±°λ, μ λ°μ΄ν°λ₯Ό μ μ₯νλ μν μ ν©λλ€.
- Domain: λΉμ¦λμ€ λλ©μΈ κ°μ²΄.
- μλ₯Ό λ€μ΄ νμ, μ£Όλ¬Έ μΏ ν° λ±λ± μ£Όλ‘ λ°μ΄ν°λ² μ΄μ€μ μ μ₯νκ³ κ΄λ¦¬λ¨.
- μ ν리μΌμ΄μ
μ ν΅μ¬ μν°ν°(Entity)μ λΉμ¦λμ€ κ·μΉμ μ μνλ κ³μΈ΅μ
λλ€.
- λ³΄ν΅ κ°μ²΄λ‘ ννλλ©°, λΉμ¦λμ€ λ‘μ§μ μΌλΆλ₯Ό μΊ‘μνν©λλ€.
- λλ©μΈ κ³μΈ΅μ μ ν리μΌμ΄μ
μμ μ€μν κ°μ²΄λ€(μ:
'User'
, 'Product'
, 'Order'
λ±)μ μ μνκ³ , μ΄ κ°μ²΄λ€μ΄ μ΄λ€ λ°©μμΌλ‘ μνΈμμ©νλμ§λ₯Ό λνλ
λλ€.
- μ΄λ μ ν리μΌμ΄μ
μ΄ μ΄λ€ λΉμ¦λμ€ λ¬Έμ λ₯Ό ν΄κ²°νλμ§μ λν λͺ¨λΈμ λνλ
λλ€.
2οΈβ£ ν΄λμ€ μμ‘΄κ΄κ³.

- νμ λΉμ¦λμ€ λ‘μ§μλ νμ μλΉμ€κ° μλ€.
- νμμ μ μ₯νλ κ²μ μΈν°νμ΄μ€λ‘ μ€κ³ λμ΄μλ€.
- κ·Έ μ΄μ λ μμ§ λ°μ΄ν° μ μ₯μκ° μ μ λμ§ μμμμ κ°μ νκ³ μ€κ³νκΈ° λλ¬Έμ΄λ€.
- κ·Έλ¦¬κ³ κ΅¬ν체λ₯Ό μ°μ μ λ©λͺ¨λ¦¬ ꡬνμ²΄λ‘ λ§λ€κ²μ΄λ€.
- κ·Έ μ΄μ λ μΌλ¨ κ°λ°μ ν΄μΌνλ―λ‘ κ΅μ₯ν λ¨μν λ©λͺ¨λ¦¬ κΈ°λ°μ λ°μ΄ν° μ μ₯μλ₯Ό μ¬μ©νμ¬ λ©λͺ¨λ¦¬ ꡬνμ²΄λ‘ λ§λ λ€.
- ν₯νμ λ©λͺ¨λ¦¬ ꡬν체λ₯Ό ꡬ체μ μΈ κΈ°μ μ΄ μ μ μ΄ λλ©΄(RDB, NoSQL λ±) κ΅μ²΄ν κ²μ΄λ€.
- κ΅μ²΄νλ €λ©΄ Interfaceκ° νμνλ―λ‘ Interfaceλ₯Ό μ μν κ²μ΄λ€.
- μμ§ λ°μ΄ν° μ μ₯μκ° μ μ λμ§ μμμ, μ°μ μΈν°νμ΄μ€λ‘ ꡬν ν΄λμ€λ₯Ό λ³κ²½ν μ μλλ‘ μ€κ³
- λ°μ΄ν° μ μ₯μλ RDB, NoSQL λ±λ± λ€μν μ μ₯μλ₯Ό κ³ λ―Όμ€μΈ μν©μΌλ‘ κ°μ
- κ°λ°μ μ§ννκΈ° μν΄μ μ΄κΈ° κ°λ° λ¨κ³μμλ ꡬνμ²΄λ‘ κ°λ²Όμ΄ λ©λͺ¨λ¦¬ κΈ°λ°μ λ°μ΄ν° μ μ₯μ μ¬μ©