JSP/Servlet [01] 웹 어플리케이션 개요
[01] HTTP 클라이언트와 서버
◈ 웹의 동작 과정
◈ URL (Uniform Resource Locator)
- 프로토콜://호스트번호:포트번호/경로/파일명
◈ Client와 Server 구조
◈ HTTP Request
- 요청라인 (Request Line) : 1줄, HTTP 메서드 방식 및 요청 URL 과 프로토콜 정보
- 요청 헤더 (Request Header) : n줄(+\n), 웹 브라우저 정보, 언어, 인코딩 방식, 요청 서버 정보 등 추가 정보
- 요청 본체 (Request Body) : 요청에 필요한 내용 (POST, PUT 요청의 경우에 있음) . GET, DELETE 는 BODY 없음
◈ HTTP Response
- 상태 라인 : 응답 상태 코드 및 프로토콜 정보
- 주요 상태 코드
- 300번대: 리다이렉트(Redirect) 요청
- 400번대 : 클라이언트측에서 잘못된 요청 (프론트엔드)
- 500번대 : 서버측에서의 에러 (백엔드)
- 응답 해더 : 응답 처리 날짜, 인코딩 방식, 요청 서버 정보 등과 같은 추가 정보
- 응답 본체 : 응답에 필요한 내용, 일반적으로 HTML 문서
[2] 웹 어플리케이션
◈ 웹 어플리케이션이란?
- 인터넷을 기반으로 구성된 웹상에서 웹 브라우저를 이용한 클라이언트와 HTML (정적 웹 컴포넌트), JSP/Servlet(동적 웹 컴포넌트) 같은 자원을 가진 웹 서버간에 동적으로 요청/응답 처리하는 프로세싱
◈ JSP/Servlet
◈ 백엔드 동작의 개요
◈ 프론트엔드 동작의 개요
[3] 웹 컴포넌트
◈ 웹 컴포넌트의 종류
- HTML 컴포넌트
- JSP 컴포넌트
- Servlet 컴포넌트
◈ 웹 컨테이너 (Web Container)
- JSP 와 Servlet 컴포넌트를 관리하는 역할
- 웹 컴포넌트는 시작점이 없음
- 이벤트(웹 브라우저의 요청) 방식으로 동작
- 클라이언트의 요청에 따라 웹 컴포넌트를 생성하고 제거하는 매커니즘 제공
- Tomcat, Resin 등
◈ Model2 아키텍처(MVC 패턴)