[Web] HttpServletRequest / HttpServletResponse주요 기능
2024. 8. 24. 09:13ㆍ자바 웹 개발/서블릿 기초
HttpServletRequest
HttpServletRequest는 HTTP 메시지 형태로 들어오는 요청에 대한 정보를 파악하기 위해 제공되는데 기능은 다음과 같다.
기능 | 메서드 | 설명 |
HTTP 헤더 관련 | getHeaderNames() getHeader(이름) |
Http 헤더 내용을 찾아내는 기능 |
사용자 관련 | getRemoteAddress() | 접속한 사용자의 IP주소 |
요청관련 | getMethod() getRequestURL() getRequestURI() getServletPath() |
get/post 정보, 사용자가 호출에 사용한 URL 정보 등 |
쿼리스트링관련 | getParameter() getParameterValues() getParameterNames() |
쿼리 스트링 등으로 전달되는 데이터를 추출하는 용도 |
쿠키 관련 | getCookies() | 브라우저가 전송한 쿠키 정보 |
전달 관련 | getRequestDispatcher() | 요청을 다른 자원(서블릿 혹은 JSP)로 전달하는 용도 |
데이터 저장 | setAttribute() | 전달하기 전에 필요한 데이터를 저장하는 경우에 사용 |
getParameter()
키를 이용해서 값을 얻는 역할을 하기 위해 사용한다. 주의할 점은 결과가 항상 String이라는 점이다. 만일 해당 파라미터가 존재하지 않으면 null을 반환한다. (따라서 null 체크가 필수이다)
getParameterValues()
동일한 이름의 파라미터가 여러개 있는 경우에 사용한다. String[] 타입으로 반환된다.
setAttribute()
JSP로 전달할 데이터를 추가할 때 사용한다. 키와 값 형태로 데이터를 저장할 수 있다. 키는 문자열이고, 값은 모든 객체 타입이다.
RequestDispatcher
forward() 메서드를 주로 사용한다. 현재까지의 모든 응답 내용을 무시하고 JSP가 작성하는 내용만을 브라우저로 전달한다.
HttpServletResponse
HttpServletResponse는 쓰는 기능을 주로 담당한다.
기능 | 메서드 | 설명 |
MIME 타입 | setContentType() | 응답 데이터의 종류를 지정 |
헤더 관련 | setHeader() | 특정 이름의 HTTP 헤더 지정 |
상태 관련 | setStatus() | 404,200,500 등 응답 상태 코드 지정 |
출력 관련 | getWriter() | PrintWriter를 이용해서 응답 메시지 작성 |
쿠키 관련 | addCookie() | 응답 시에 특정 쿠키 추가 |
전달 관련 | sendRedirect() | 브라우저에 이동을 지시 |
sendRedirect()
Locationdl이 응답을 받으면 화면을 처리하는 대신에 주소창에 지정된 주소로 이동하고 다시 호출하게 된다. 브라우저의 주소가 아예 변경되기 때문에 '새로고침' 요청을 미리 방지할 수 있다.
'자바 웹 개발 > 서블릿 기초' 카테고리의 다른 글
[Web] MVC / PRG (0) | 2024.09.10 |
---|---|
[Web] 인텔리제이 코드 변경 적용 (0) | 2024.08.24 |
[Servelt] 데이터베이스 연동하기 (0) | 2024.08.09 |
[servlet] web.xml에서 서블릿 매핑하기 (0) | 2024.08.08 |
[Web] HttpServletResponse를 이용하기 (0) | 2024.08.06 |