在项目开发中 有时候会遇到 项目启动后 中途修改js 必须重新启动项目并且需要清理浏览器缓存。
可以 在导入js时 可以如下:
<script type="text/javascript" src="${getPublicFile("/public/javascripts/StartSite2_1.js")}"></script>
其中 getPublicFile可以 用自定义标签的形式在类中 添加一个方法。处理在js文件中加一个时间戳。这样js文件后面就会加一个数字 可以随时修改js文件 而不用重新启动项目,清理缓存。
用 playframework 开发是 可以 在
JapidWebUtil 类中添加
public static String getPublicFile(String webPath) {
String path = play.Play.applicationPath.getPath() + webPath;
path = path.replaceAll("\\\\", "/");
return webPath + "?" + FileUtil.getFileModifyTime(path);
}
此类进行处理。
其中FileUtil类中的方法是如下:
/**
* 取文件最后修改时间戳
* @param path
* @return
*/
public static long getFileModifyTime(String path){
File f = new File(path);
if (f.isFile()) {
return f.lastModified();
}
return 0;
}