KH/Servlet

HTTPServletRequest, HttpServletResponse 이란?

오늘의 진 2022. 11. 7. 20:37

 

 

 

 

HttpServlet

  • HTTP 프로토콜은 사용하는 웹 브라우저에서 서블릿 기능을 수행한다. 따라서 개발자는 HTTPServlet을 상속 받아 많은 기능을 수행한다.
  • WAS 가 웹 브라우저로부터 Servlet 요청을 받으면 
  • 1. 요청을 받을때 전달받은 정보를 HttpServleteRequest 객체를 생성한다. 
  • 2.웹 브라우저에 응답을 반환할 HttpResponse 객체를 생성한다.(응답을 담기 전 빈 객체)
  • 3. 생성된 HttpServletRequest,HttpServletResponse 객체를 Servlet에 전달한다. 

 

Servlet

  • WAS에서 동적 웹페이지 구현을 할 수 있도록 도와주는 자바 클래스의 일종(프로그래밍 기술)
  • 서블릿 관련 추상 메소드를 제공하는 인터페이스 
  • (예) init() , service()

HttpServletRequest

  • HTTP 요청 정보(클라이언트 요청, 쿠키, 세션 등)를 제공하는 인터페이스 
  • HTTP 프로토콜의 request 정보를 서블릿에게 전달하기 위한 목적으로 사용된다. (요청을 담아오는 컨테이너 역할)
  • Message Body의 Stream을 읽어들이는 메소드를 가지고 있다

[메소드]

getParameter( "name" ) 현재 요청에 포함된 매개변수 이름을 열거 형태로 넘겨준다
getParameterNames( ) 문자열 name과 같은 이름의 매개변수를 가져온다

 

HttpServletResponse

  • HTTP 응답 정보(요청 처리 결과)를 제공하는 인터페이스 
  • Servlet은 HttpServletResponse 객체에 content-type, 응답코드, 응답메세지 등을 담아서 전송한다. (응답을 담는 컨테이너 역할)
  • Servlet으로 들어온 요청은 텍스트(HTML)로 응답을 내보내기 때문에 출력 스트림을 받기 위해 주로 response로 부터 writer 객체를 얻어서 내보낸다. 
  • (예) PrintWriter out = response.getWriter() ; 

[메소드]

setContentType() 요청에 대해 클라이언트에게 돌려줄 Content type 결정 
setCharcterEncoding( )