본문 바로가기
IT/JSP

[JSP] - 8. response(기본객체) 사용법

by 차이나는 개발자 2020. 7. 21.
728x90
반응형

#response(기본객체) 사용법

 

 

#response

response기본 객체는 request 기본 객체와 반대의 기능을 수행한다.

request 기본 객체가 웹 브라우저가 전송한 요청 정보를 담고 있다면

response 기본 객체는 웹 브라우저에 보내는 응답 정보를 담는다.

 

 

#response 기본 객체가 응답 정보와 관련해서 제공하는 기능

-헤더 정보 입력

-리다이렉트 하기

 

 

#response 기본 객체가 제공하는 헤더 관련 메서드

메서드 설명
addDateHeader(String name, long date) name 헤더에 date를 추가한다. date는 1970년 1월 1일 이후 흘러간 시간을 1/1000초 단위로 나타낸다.
addHeader(String name, String value) name 헤더에 value를 값으로 추가한다.
addIntHeader(String name, int value) name 헤더에 정수 값 value를 추가한다.
setDateHeader(String name, long date) name 헤더의 값을 value로 지정한다. date는 1970년 1월 1일 이후 흘러간 시간을 1/1000초 단위로 나타낸다.
setHeader(String name, String value) name 헤더의 값을 value로 지정한다.
setIntHeader(String name, int value) name 헤더의 값을 정수 값 value로 지정한다.
containsHeader(String name) 이름이 name인 헤더를 포함하고 있을 경우 true를, 그렇지 않을 경우 false를 리턴한다.

 

#응답 헤더와 관련된 헤더 추가 메서드

응답헤더 설명
Cache-Control HTTP 1.1 버전에서 지원하는 헤더로서, 이 헤더의 값을 "no-cache"로 지정하면 웹 브라우저는 응답 결과를 캐시하지 않는다.
Pragma HTTP 1.0 버전에서 지원하는 헤더로서, 이 헤더의 값을"no-cache"로 지정하면 웹 브라우저는 응답 결과를 캐시에 저장하지 않는다.
Expires HTTP 1.0 버전에서 지원하는 헤더로서, 응답 결과의 만료일을 지정한다. 만료일을 현재 시간보다 이전으로 설정함으로써 캐시에 보관되지 않도록 할 수 있다.

 

캐시란?

-브라우저(클라이언트)가 저장해 놓은 데이터

-웹 브라우저가 WAS에 같은 jsp파일을 2번 이상 요청할 때 불필요한 응답 요청을 방지하기 위해 사용한다.

-웹 브라우저의 응답속도 향상되는 효과가 있다.

 

-캐시를 쓰면 안 되는 경우 아래의 코드를 추가하여 웹 브라우저가 캐시에 보관하지 않도록 설정할 수 있다.

	<%
		response.setHeader("Cache-Control", "no-cache");
		response.addHeader("Cache-Control", "no-store");
		response.setHeader("Pragma", "No-cache");
		response.setDateHeader("Expires", 1L);
	%>

no-cache : 캐시 x

no-store : 저장 x

Pragma : HTTP1.0, HTTP1.1 모두 대비

Expires : 1970년1월1일시작~ ms단위로 값을 입력

 

 

 

728x90
반응형

댓글