1οΈβ£ Web Layer
- μΉ μ΄ν리μΌμ΄μ
μ μ΅μμμ μ‘΄μ¬
- μΈλΆμ μμ²κ³Ό μλ΅μ λν μ λ°μ μΈ μμ
- μ΄ν리μΌμ΄μ
μ μ΅μμμ μ‘΄μ¬
- λ€λ₯Έ λ μ΄μ΄μμ λ°μν μμΈ μ²λ¦¬
- μΈμ¦μ κ΄λ¦¬νκ³ κΆνμλ μ¬μ©μμ μΈκ°λ₯Ό κ±°λΆνλ μν
- 컨νΈλ‘€λ¬(
@Controller)μ JSP/Freemarker λ±μ λ·° ν
νλ¦Ώ μμμ΄λ©°, νν°(@Filter), μΈν°μ
ν°, 컨νΈλ‘€λ¬ μ΄λλ°μ΄μ€(@ControllerAdvice) λ±μ ν¬ν¨
2οΈβ£ Service Layer
- νΈλμ μ
, λλ©μΈ κ° μμ 보μ₯μ μν λ§ ν΄μΌν¨
- λΉμ¦λμ€ λ‘μ§μ΄ ν¬ν¨λλ©΄ μλ¨
@Service μ μ¬μ©λλ μλΉμ€ μμ
Controller μ DAO μ μ€κ° μμμμ μ¬μ©λ¨
@Transactional μ΄ μ¬μ©λμ΄μΌ νλ μμ
3οΈβ£ Repository Layer
Database μ κ°μ΄ λ°μ΄ν° μ μ₯μμ μ κ·Όνλ μμ
4οΈβ£ Dtos
- κ³μΈ΅ κ° λ°μ΄ν° κ΅νμ μν κ°μ²΄
DTO λ€μ μμ
- λ·° ν
νλ¦Ώ μμ§μμ μ¬μ©λ κ°μ²΄,
Repository Layer μμ κ²°κ³Όλ‘ λκ²¨μ€ κ°μ²΄ λ±μ΄ μμ
5οΈβ£ Domain Model
- λλ©μΈμ΄λΌ λΆλ¦¬λ κ°λ° λμμ λͺ¨λ μ¬λμ΄ λμΌν κ΄μ μμ μ΄ν΄ν μ μκ³ κ³΅μ ν μ μλλ‘ λ¨μν μν¨ κ²
- μλ₯Ό λ€μ΄, νμ μ±μμ λ°°μ°¨, νμΉ, μκΈ λ±μ΄ λͺ¨λ λλ©μΈμ΄λΌ λΆλ¦Ό
- λΉμ¦λμ€ λ‘μ§μ ν¬ν¨
@Entity ν΄λμ€λ λλ©μΈ λͺ¨λΈμ ν¬ν¨λ¨
VO λΌκ³ λΆλ¦¬μ°λ κ° κ°μ²΄λ μ¬κΈ°μ ν¬ν¨λ¨
μΆμ²π
π μ€νλ§ λΆνΈμ AWSλ‘ νΌμ ꡬννλ μΉ μλΉμ€