-
JSP | Response 내장 객체JAVA/JSP 2020. 2. 19. 17:03
Response 내장 객체
웹 브라우저로 응답할 응답 정보를 가지는 JSP 내장 객체
- 웹 브라우저에 보내는 응답 정보는 HttpServletResponse 객체에 있음
- JSP에서는 response 객체를 이용해서 접근
- 주로 헤더 정보 입력, 리다이렉트 등의 기능을 제공
Response Method
메소드 설명 void setHeader(name, value) 헤더 정보의 값을 수정하는 메소드
name에 해당하는 헤더 정보를 value로 수정void setContentType(type) 웹 브라우저의 요청 결과로 보일 페이지의 contentType 설정
page 디렉티브의 contentType 속성과 같은 역할void sendRedirect(url) 페이지를 이동시키는 메소드
url 페이지로 프로그램 제어가 이동함
중간의 로직 처리를 보여줄 필요가 없을 때 사용
ex) 게시글 DB 저장 후 게시글 목록 출력
sendRedirect(url) 처리 과정
- 웹 브라우저가 a.jsp 페이지 요청
- a.jsp 페이지의 내용을 수행
- response.sendRedirect("b.jsp");
문장을 만나면 프로그램 제어가 b.jsp로 이동
이 때 위의 문장을 만나기 전까지 실행된 코드 중
출력될 값을 모두 버린 후에 b.jsp로 이동 - b.jsp 페이지 수행
- b.jsp 페이지를 수행한 결과를 웹 브라우저로 응답
b.jsp 페이지의 내용만 처리 결과로 화면에 출력
※ a.jsp와 b.jsp는 데이터를 공유하지 않음
→ forward 액션 태그는 데이터를 공유하면서 이동 가능
자기 프로젝트 내의 다른 페이지로만 이동 가능하며
URL이 다음 페이지로 변경되지 않음
예제_sendRedirect(url)
123456789101112131415161718192021<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title></head><body><h1>sendRedirect Method Practice</h1><p>매개변수 URL 주소로 이동되며 해당 페이지의 내용만 응답으로 출력</p><p>이 페이지에 작성한 내용은 출력되지 않으며 URL주소 역시 표출되지 않음</p><%// 외부 사이트로도 이동 가능// response.sendRedirect("http://www.daum.net");// 프로젝트 내부의 다른 파일로 이동response.sendRedirect("../bottom/bottom.jsp");%></body></html>http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
결과
JSP 페이지에서 처리한 결과를 웹 브라우저로 전송하는 응답 정보가 담긴 response 내장 객체에 대해 알아보았습니다.
서블릿에서와 같이 response 객체를 사용해서 화면에 html문서를 출력할 때는
setContentType() 메소드로 utf-8 인코딩을 지정해주어야 한글이 깨지지 않습니다.또, 처리는 해야하지만 사용자에게 노출할 필요가 없는 페이지에서 sendRedirect() 메소드를 사용하면
처리 결과를 화면에 출력하지 않으면서 필요한 작업을 수행할 수 있겠습니다.'JAVA > JSP' 카테고리의 다른 글
JSP | Action Tag 액션 태그 개요 (0) 2020.02.19 JSP | Out 내장 객체 (0) 2020.02.19 JSP | Request 내장 객체 (2) 2020.02.19 JSP | 내장 객체 개요 & Method &객체 영역 (0) 2020.02.19 JSP | Page Directives_< %@include% > (0) 2020.02.19