- Today
- Total
- database
- 그리λ
- dp
- μλ°μμ μ
- CS
- νλ‘κ·Έλλ¨Έμ€
- spring
- OOP
- Graph
- λ€μ΅μ€νΈλΌ
- μλ£κ΅¬μ‘°
- λ°±μ€
- μμμ λ ¬
- array
- μΈν΄
- leetcode
- tree
- MST
- μλ°
- BFS
- pytorch
- ꡬν
- Algorithm
- λ°±μλ
- λ°μ΄ν°λ² μ΄μ€
- μ‘Έμ μν
- PS
- 벨λ§ν¬λ
- java
- λ¬Έλ²
Partially Committed
JSP MVC ν¨ν΄ λ³Έλ¬Έ
λκ° λͺ ννμ§ μμλ λ΄μ©μ λν΄μ μ 리ν΄λ³΄μ..
1. WEB-INF ν΄λλ?
WEB-INF ν΄λλ λΈλΌμ°μ μμ URL μ ν΅ν΄ μ§μ μ κ·Όν μ μκ³ (νλ €κ³ νλ©΄ 404 ERROR λ°μ) μλ² λ΄μμλ§ μ κ·Ό κ°λ₯νλ―λ‘ Web μ 보μ κ΄ν μ€μν νμΌλ€μ WEB-INF(Web Information) ν΄λμ λ£λλ€. κ·Έλ¬λ―λ‘ λ³΄μμ±μ κ°νν μ μλ€λ κ²μ΄ μ₯μ μ΄μ§λ§, λΈλΌμ°μ μ μ§μ μ κ·Όμ΄ μ νλλ―λ‘ Controller μ λ°λμ κ±°μ³μ μ΄λν΄μΌλ§ νλ€.
μΌλ°μ μΌλ‘ jsp νμΌμ WEB-INF ν΄λμ λ£κ³ , css, img, jQuery μ κ°μ μ μ νμΌμ WEB-INF ν΄λμ λ£μ§ μλλ€κ³ νλ€. jsp νμΌμ WEB-INF ν΄λμ λ£μ΄μ κ΄λ¦¬νλ μ΄μ κ° λ¬΄μμΌκΉ? λΈλΌμ°μ λ₯Ό ν΅ν΄μ jsp νμΌμ μ§μ μ κ·Όκ°λ₯νλλ‘ νλ©΄, μλΈλ¦Ώμ ν΅κ³Όνμ§ μμΌλ―λ‘ 'λ°λμ μνλλλ‘ κ΅¬νν κΈ°λ₯' μ΄ μ€νλμ§ μκ³ ν΄λΉ jsp νμ΄μ§μ μ κ·Όνκ² λλ μΌμ΄ λ°μν μ μλ€. (μ κ·Ό μκ°, IP λ±μ΄ db μ μ μ₯λμ΄μΌ νλλ° μ μ₯μ΄ λμ§ μλ λ±)
μ΄λ¬ν μν©μ λ°©μ§νκΈ° μν΄ jsp νμΌμ WEB-INF ν΄λ λ΄μ λ£μ΄μ λΈλΌμ°μ μμ μ§μ μμ²νμ§ λͺ»νλλ‘ λ°©μ§νλ κ²μ΄λ€. λͺ¨λ μ¬μ©μλ€μ jsp νλ©΄μ 보기 μν΄ μλΈλ¦Ώ(Controller)μ λ°λμ κ±°μ³μΌ νλ€.
1. Model 1
μΉ λΈλΌμ°μ μ μμ²μ΄ JSP λ‘ λ°λ‘ μ λ¬λκ³
JSP νμΌμμ Controller, View κΈ°λ₯μ λͺ¨λ μ²λ¦¬ν λ€μ κ·Έ κ²°κ³Όλ₯Ό ν΄λΌμ΄μΈνΈμ λ°ννλ€.
μ΄λ₯Ό μν΄ JSP νμΌ λ΄μ μλ° μ½λμ λ§ν¬μ κ΄λ ¨ μ½λλ€μ΄ νΌμ©λλ―λ‘ μ μ§λ³΄μ / λλ²κΉ μ΄ μ΄λ €μμ§λ€. κ·Έλ¬λ―λ‘ λκ·λͺ¨ μμ€ν μμλ μ ν©νμ§ μμ ꡬ쑰λΌκ³ ν μ μλ€.
2. Model 2 (MVC)
Model 1 μ λ¨μ μ κ°μ νκΈ° μν΄ Controller(Servlet) μ λμ νμλ€. μΉ λΈλΌμ°μ μ μμ²μ μ΄ Controller(Servlet) μ΄ λ°κ³ , μ μ ν μ²λ¦¬λ₯Ό μνν λ€ jsp νμ΄μ§λ‘ forward νλ€. κ·Έλ¬κ³ λλ©΄ JSP νμ΄μ§(view) μμλ κ²°κ³Ό νλ©΄μ Client μ μ μ‘νλ€. Model, View, Controller μΌλ‘ μν κ³Ό κΈ°λ₯μ λͺ νν λλμ΄ κ°λ°, μ μ§λ³΄μκ° νΈλ¦¬νλ€.
Model: λΉμ§λμ€ μμμ μν μ 보λ₯Ό μ²λ¦¬
View : λΉμ§λμ€ μμμ λν μ¬μ©μκ° λ³΄κ² λ κ²°κ³Ό νλ©΄μ λ΄λΉ
Controller : μ¬μ©μμ μ λ ₯ λ° νλ¦ μ μ΄λ₯Ό λ΄λΉ
MVC ν¨ν΄μΌλ‘ κ°λ°νλ©΄ μ΄ν리μΌμ΄μ μ νλ¦ μ μ΄, μ¬μ©μ μ²λ¦¬ μμ²μ Controller μμ λ΄λΉνκ² λκ³ , λΉμ§λμ€ λ‘μ§μ μ²λ¦¬νλ λͺ¨λΈκ³Ό νλ©΄μ 보μ¬μ£Όλ View λ μ² μ νκ² λΆλ¦¬λλ€.
3. μ€νλ§ MVC
ν΄λΌμ΄μΈνΈλ‘λΆν° HTTP μμ²μ DispatcherServlet μ΄ λ°λλ€.
→ DispatcherServlet μ HandlerMapping μ ν΅ν΄, μμ²λ°μ κ²μ μ²λ¦¬ν Controller μ κ²μνλ€.
→ μ μ ν Controller μ μ°ΎμμΌλ©΄, κ·Έ Controller μ μ€ννμ¬ μμ²μ μ²λ¦¬νλ€.
→ Controller λ λΉλμ§μ€ λ‘μ§μ μν κ²°κ³Όλ‘ μ»μ΄ λΈ Model μ 보μ Model μ 보μ¬μ€ View μ 보λ₯Ό ModelAndView κ°μ²΄μ μ μ₯ν λ€ λ°ννλ€.
→ DispatcherServlet μ ModelAndView λ‘λΆν° View μ 보λ₯Ό μΆμΆνκ³ , ViewResolver μ μ΄μ©ν΄ μλ΅μΌλ‘ μ¬μ©ν view λ₯Ό μ»λλ€.
→ κ·Έ View λ₯Ό DispatcherServlet μ΄ μ€ννμ¬ μλ΅μ μ μ‘νλ€.
μ°Έκ³ ν κΈ
1. JSP MVCν¨ν΄(study3) (tistory.com)
2. [Spring MVC]Model1, Model2 κ·Έλ¦¬κ³ μ€νλ§ MVC ꡬ쑰 :: Dev History (tistory.com)
'π» Study ! > Spring' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μΈν 리μ μ΄μμ κ°μκΈ° μ€νλ§ νλ‘μ νΈμ λΉ¨κ°μ€μ΄ λ무νλ€λ©΄?! (0) | 2023.08.05 |
---|---|
[Spring] λΉ μλͺ μ£ΌκΈ° μ½λ°±, λΉ μ€μ½ν (0) | 2023.01.18 |
[Spring] μμ‘΄κ΄κ³ μλ μ£Όμ (0) | 2023.01.16 |
[Spring] μ±κΈν€ 컨ν μ΄λ (0) | 2023.01.12 |
[Spring] Spring κ³Ό OOP (0) | 2023.01.04 |