Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

개발자되기 프로젝트

[Servlet, JSP] MVC 패턴 본문

인프런/[인프런] 스프링 MVC 1

[Servlet, JSP] MVC 패턴

Seung__ 2021. 9. 9. 22:37

1. 변경 주기가 다르면 분리하자.


UI 를 수정하는 것과 비즈니스 로직을 수정하는 일은 변경 주기가 다를 가능성이 매~~우 높음.

변경 라이프 사이클이 다른 코드를 하나의 코드로 관리하는 것은 유지보수하기 좋지 않음..

 

 

 

2. 기능 특화


JSP같은 뷰 템플릿은 화면을 렌더링하는 데 최적화 되어있음.

 

 

 

3. Model View Controller(MVC)


컨트롤러(Controller)와 뷰(View)라는 영역으로 서로 역할을 나눈 것을 말한다.  보통 이 MVC 패턴을 사용함

  • Controller
    • HTTP 요청을 받아서 파라미터를 검증하고, 비즈니스 로직을 실행한다.
    • 그리고 뷰에 전달할 결과데이터를 조회해서 모델에 담는다.
  • Model
    • 뷰에 출력할 데이터를 담음. 뷰가 필요한 데이터를 모두 모델에 담아서 전달해줌.
    • 따라서 뷰는 비즈니스 로직이나 데이터 접근을 몰라도 되고, 화면을 렌더링 하는 일에 집중
  • View
    • 모델에 담겨있는 데이터를 사용해서 화면을 그리는 일에 집중한다.
    • HTML을 생성하는 부분

 

 

4. 참고


  • 일반적으로 비즈니스 로직은 서비스(Service)라는 계층을 별도로 만들어서 처리한다.
  • 그리고 컨트롤러는비즈니스 로직이 있는 서비스를 호출하는 담당한다. \
  • 참고로 비즈니스 로직을 변경하면 비즈니스 로직을 호출하는 컨트롤러의 코드도 변경될 수 있다. 
Comments