브라우저(browser)의 캐쉬(cache) 삭제
정적인 문서는 캐쉬를 통해 결과를 보여줘도 상관없지만, JSP문서는 동적인 문서이므로 브라우저가 캐쉬(cache)를
통해 결과를 보여주도록 하면 안된다. 그래서 항상 서버에 접속해서 결과를 생성 할 수 있도록 적절한 정보를 HTML의 헤더에 포함시켜야 한다.
다음의 내용은 브라우저가 캐시를 사용하지 못하도록 헤더를 브라우저에 보내는 자바 코드이다.
----------------------------------------------------------------------------
- 첫번째 방법 -
<%
if ( request.getProtocol().compareTo("HTTP/1.0") == 0 ) {
response.setHeader("Pragma", "no-cache");
}
else if (request.getProtocol().compareTo("HTTP/1.1") == 0 ) {
response.setHeader("Cache-Control", "no-cache, must-revalidate");
}
response.setDateHeader("Expires", 0);
%>
----------------------------------------------------------------------------
- 두번째 방법 -
<%
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);
response.setHeader("Cache-Control", "no-cache")
%>
----------------------------------------------------------------------------
위에 코드를 항상 JSP문서 앞에 코딩아는 것은 매우 번거롭기 때문에 include를 이용하여 호출해서 사용한다.
<% @ include file = "no-cache.jsp" %> -> 위에 코딩한 문서를 no-cache.jsp로 저장후 호출