- 들어가기 전에
클라이언트가 서버에게 보낸 요청을 추상화한 객체 HttpServletRequset 와 서버가 클라이언트에게 응답하기 위한 정보를 추상화한 객체 HttpServletResponse에 대해 알아보자.
- 학습 목표
1. HttpServletRequest 객체를 이해한다.
2. HttpServletResponse 객체를 이해한다.
- 핵심 개념
- HttpServletRequset
- HttpServletResponse
- 요청과 응답
- 웹 브라우저에 URL을 입력하고 Enter를 입력하면, 웹 브라우저는 도메인과 포트 번호를 이용해 서버에 접속한다. 그리고 나서 path 정보, 클라이언트의 IP, 클라이언트의 다양한 정보를 포함한 요청 정보를 서버에게 전송하게 된다.
- WAS는 웹 브라우저(클라이언트)로 부터 Servlet 요청을 받으면
· 요청할 때 가지고있는 정보를 HttpServletRequest 객체를 생성하여 저장
· 웹 브라우저에게 응답을 보낼 때 사용하기 위하여 HttpServletResponse 객체를 생성
· 생성된 HttpServletRequest, HttpServletResponse 객체를 요청 정보에 있는 path로 매핑된 서블릿에 전달
· 이렇게 전달한 객체는 service(), doGet(), doPost() 같은 메서드에 파라미터로 전달되어서 사용하게 된다.
- HttpServletRequest
- http 프로토콜의 request 정보를 서블릿에 전달하기 위한 목적으로 사용
- 헤더정보, 파라미터, 쿠키, URI, URL 등의 정보를 읽어 들이는 메소드를 가지고있다.
- Body의 Stream을 읽어 들이는 메소드를 가지고있다.
- HttpServletResponse
- WAS는 어떤 클라이언트가 요청을 보냈는지 알고있고, 해당 클라이언트에게 응답을 보내기 위한 HttpServletResponse 객체를 생성하여 서블릿에게 전달
- 서블릿은 해당 객체를 이용하여 content type, 응답코드, 응답메시지 등을 전송
- 헤더 정보 읽어 들이기
- 웹 브라우저가 요청정보에 담아서 보내는 header값을 읽어 들여 브라우저 화면에 출력한다.
- http://localhost:8080/firstweb/header
- package name : examples
- class name : HeaderServlet
- url mapping : /header
- 파라미터 읽어 들이기
- URL 주소의 파라미터 정보를 읽어들여 브라우저 화면에 출력한다.
- http://localhost:8080/firstweb/param?name=woo&age=24
· ?를 기준으로 뒤에 있는 것들이 파라미터
· &를 기준으로 각각 다른 파라미터
· =을 기준으로 앞에 있는 것은 파라미터 이름, 뒤에 있는 것은 파라미터 값
- package name : examples
- class name : ParameterServlet
- url mapping : /param
- 그 외의 요청정보 출력
- URI, URL, PATH, Remote host 등에 대한 정보 출력
- http://localhost:8080/firstweb/info
· URL : 요청 주소 전체
· URI : 웹 어플리케이션과 매핑된 path
- package name : examples
- class name : InfoServlet
- url mapping : /info
'Progamming > BoostCourse' 카테고리의 다른 글
자바스크립트 비교-반복-문자열 (0) | 2019.01.19 |
---|---|
자바스크립트 변수-연산자 타입 (0) | 2019.01.19 |
Servlet 라이프 싸이클 (0) | 2019.01.16 |
Servlet 작성 방법 (0) | 2019.01.16 |
Servlet이란? (0) | 2019.01.16 |
댓글