- 과거 : 한 파일에 모든걸 때려넣으니까 유지/보수가 어려웠겠지. 이제는 각 기능마다 하는 일을 나눠서 할거임 -> MVC
- MVC(Model-View-Controller) :
-> 화면과 데이터 처리를 분리,
-> 코드간 종속성 줄이고 구성요소간의 역할을 명확하게 함
-> 코드 분리가 쉽고 협업이 용이함
# Model : 데이터 처리영역 (= 빵공장의 빵)
-> Data Base와 연동하는 영역
-> View와 Controller에 의존하지 않아야 함
# View : 사용자에게 보이는 화면
-> 흔히 UI라고 불림
-> Controller로 부터 전달받은 데이터의 출력 및 html, CSS 등을 통해 화면의 디자인을 처리하는 영역
-> 기본적으로 Model, Controller와의 종속성 없이 구현애햐 함
# Controller : 핵심!! 모든 사용자 요청의 중심임.
-> 사용자가 어떠한 작업(ex. 회원가입-로그인..) 수행시,
특정 뷰로 요청이 가기 전에, 컨트롤러에서 먼저!!! 요청을 받는다
[내 결론]
1. 클라이언트(사용자)가 프로그램에 아이디 중복검사를 요청
2. 컨트롤러가 그 요청을 받아들여
3. 어떠한 정보(아이디/비밀번호 등)를 Model에서 가져와.
4. Controller에서 아이디가 중복되지는 않았는지 / 비밀번호가 정확한지 등의 내용을 처리하겠지
(View는 단순히 사용자에게 보여주는 역할 밖에 못하기때문에)
5. Controller가 정리된 데이터를 뷰에게 전송
6. View를 통해서 사용자가 결과값을 볼 수 있게 됨
## 정적 / 동적 객체
1. 정적 웹 페이지 (Static Web Page)
- 서버(웹 서버, Web Server)에 미리 저장된 파일(HTML 파일, 이미지, JavaScript 파일 등)이 그대로 전달되는 웹 페이지
- 서버는 사용자가 요청(Request)에 해당하는 저장된 웹 페이지를 보냄
- 사용자는 서버에 저장된 데이터가 변경되지 않는 한 고정된 웹 페이지를 보게 됨
- 정보 수정 시 관리자가 직접 HTML 소스를 수정하여 사용자에게 정보 제공함
2. 동적 웹 페이지 (Dynamic Web Page)
- 서버(웹 서버, Web Server)에 있는 데이터들을 스크립트에 의해 가공처리한 후 생성되어 전달되는 웹 페이지
- 서버는 사용자의 요청(Request)을 해석하여 데이터를 가공한 후 생성됭되는 웹 페이지를 보냄
- 사용자는 상황, 시간, 요청 등에 따라 달라지는 웹 페이지를 보게 됨
- 클라이언트의 요청이 있을 때마다 DB에 접근하여 실시간 정보를 클라이언트에게 제공하게 됨
'JSP > DAY 40 _ 23.10.17' 카테고리의 다른 글
Query String, Get, Post (1) | 2023.10.20 |
---|---|
JSP Basic (0) | 2023.10.19 |