Tip

js, css 파일 캐시 방지

  • -
반응형

간혹 운영서버에 js, css 파일 배포시 소스를 확인해보면 파일이 수정되어 않은 경우가 발생하곤 했습니다.

문제는 브라우저에 캐시가 남아있어 발생하게 되는 것인데 이 경우 js, css 파일명 뒤에 쿼리스트링 형태로 문자열을 전달하게 되면 캐시 문제를 방지할 수 있습니다.


1) JSTLJSTL fmt(Formatting tags) 태그를 사용하기 위해 라이브러리를 추가한다.

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

 

2) 쿼리스트링 형태로 오늘 날짜를 넣어주기 위해 자바빈 객체를 생성한다.(*Date 클래스의 객체)

생성된 자바빈 객체는 날짜 데이터를 담고 있다.

<jsp:useBean id="today" class="java.util.Date" />

 

3) 생성된 날짜 객체를 formatDate 속성을 이용해 yyyymmdd 형태로 만들어준다.

<fmt:formatDate value="${today}" pattern="yyyyMMdd" var="updateTime" />

 

 

아래 사이트를 참고하면 fmt 태그의 다른 속성들과 포맷들을 확인할 수 있다.

 

 

JSP - Standard Tag Library (JSTL) Tutorial - Tutorialspoint

JSP - Standard Tag Library (JSTL) Tutorial In this chapter, we will understand the different tags in JSP. The JavaServer Pages Standard Tag Library (JSTL) is a collection of useful JSP tags which encapsulates the core functionality common to many JSP appli

www.tutorialspoint.com

 

4) include 하는 css, js 파일에 오늘 날짜로 쿼리스트링 형태를 만들어준다.

<!-- 공통 CSS -->
<link href='<c:url value="/include/common.css"><c:param name="date" value="${updateTime}"/></c:url>' rel="stylesheet" type="text/css" />

<!-- 공통 JS -->
<script type="text/javascript" src='<c:url value="/include/common.js"><c:param name="date" value="${updateTime}"/></c:url>"/>'></script>

 

5) 결과 확인

 


+피드백은 언제나 환영입니다 :)

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.