Model - 2 : 비즈니스 로직(servlet) + 프레젠테이션 로직(jsp)
-> 사용자의 요청이 많을수록 점점 많아진다(서블릿이든 jsp든).
=> 음식점에 메뉴별 담당 요리사가 1명씩 있다고 생각하면 됨(메뉴 수가 늘어남에 따라 요리사도 동일하게 늘어남)
=> 단점: 로직이 늘어나게 되면 서버가 부담을 느낄 위험이 있다.
MVC(Model-View-Controller) - Pattern : 모든 작업이 FrontController(대표 컨트롤러-서블릿) 1개에 의해 처리됨
-> 처리객체는 POJO(누구에게 상속받지 않는 자바 객체 - 스프링이 관리하는 대부분의 객체)로 만들어진다.
-> MVC에서는 사용자의 요청을 받는 Controller의 기능이 명확하게 드러난다. // Model-2의 단점을 보완
-> Controller에서는 요청접수/분류 및 요청에 따른 처리객체 호출 -> 실질적인 일은 처리객체에서 이뤄짐
-> Controller에서는 처리객체에서 받아온 데이터를 수신하여 뷰에게 출력을 지시한다.
// Controller는 실질적인 일을 하지는 않는다.
=> 단, 전반적인 작업 통제의 역할을 하는 Controller가 MVC에서 가장 중요한 역할을 한다고 볼 수 있다.
모든 Controller(servlet)가 수행되기 전에 Filter를 거쳐간다.
-> 서블릿 호출전 꼭 거쳐가야하는 단계
-> 스프링에서 사용되는 필터 이름
-> Filter에서 필요로 하는 메서드(수신 인코딩 설정해주기)
)Controller 생성
-> 항상 1번을 거쳐서 2번 과정을 거침
-> Filter로 인해 따로 수신인코딩을 설정해주지 않아도 됨.
)URL과 URI
M-V-C 간에는 request를 공유한다.
)view 기능 추가
-> action에 메서드만 추가해주기
'MVC' 카테고리의 다른 글
MVC - 방명록 예제 (0) | 2024.07.15 |
---|