JAVA/Servlet
[Servlet] HttpServletRequest, HttpServletResponse의 이해
Yoon
2021. 12. 1. 23:01
Servlet?
서블릿이란 클라이언트의 요청을 처리하고 응답을 사용자에게 반환하는 Servlet구현 규칙을 지킨 자바 웹 프로그래밍 기술이다.
웹 브라우저가 요청했을 때 WAS가 어떻게 처리하는지 구조를 나타낸 그림이다.
웹 브라우저가 요청을 하면 전달받은 정보를 HttpServletRequest 객체에 담아 서블릿에게 보낸다.
서블릿이 요청을 처리 후 응답 데이터를 HttpServlertResponse에 담아 웹 브라우저에게 보내준다.
HttpServletRequest
HTTP프로토콜의 request 정보를 서블릿에세 전달하기 위한 목적으로 사용됨.
Header 정보, Parameter, Cookie, URI, URL 등의 정보를 읽어들이는 메소드를 가진 클래스임.
Body의 Stream을 읽어들이는 메소드를 가지고 있음.
HttpServletRequest 요청 URI 가져오는 메소드
예시 URL
http://localhost:8080/contextPath/servletPath/test.do?idx=100
getRequestURL()
쿼리를 제외한 프로토콜/도메인/포트번호/컨텍스트 경로/서블릿 경로를 구함
http://localhost:8080/contextPath/servletPath/test.do
getRequestURI()
포트 번호와 쿼리 사이의 정보를 구함(컨텍스트 경로/서블릿 경로)
/contextPath/servletPath/test.do
getContextPath()
컨텍스트 경로를 구함
/contextPath
getServletPath()
서블릿 경로를 구함
/servlet/test.jsp
getQueryString()
쿼리를 구함
idx=100
getServerName()
도메인을 구함
127.0.0.1
getServerPort()
포트를 구함
8080
HttpServletResponse
Servlet은 HttpServletResponse 객체에 Content Type, 응답코드, 응답 메시지 등을 담아서 전송함.