
引用静态文件的时候 这样处理 加上版本号?v=文件最后修改时间
<%=WebCacheAutoVersion.AutoVersion(path,root,"/assets/scripts/slider.js")%>
public class WebCacheAutoVersion { public static String AutoVersion(String path, String root, String fileName) { File file = new File(path, fileName); if (file.exists()) { return root + fileName + "?ver=" + file.lastModified(); } else { return root + fileName + "?ver=1"; }
} } 问题是我在每个 jsp 文件中只要引入 JS 文件都会手动去 <%=WebCacheAutoVersion.AutoVersion(path,root,"/assets/scripts/slider.js")%> 这样设置文件路径
有没有办法其他更好的办法,很快让人上手并投入使用的呢?
1 teemoer OP 上图: |
2 rason 2016 年 6 月 17 日 自定义标签 |
3 wwqgtxx 2016 年 6 月 17 日 via Android |
4 palmers 2016 年 6 月 17 日 ```Javascript src="../js/security.js?version=${applicationScope.version}" ``` |
5 teemoer OP @palmers = = 这个还是需要在 每一个引入文件的地方尾巴后面加上${applicationScope.version} ...... |
7 jason19659 2016 年 6 月 17 日 服务器设置不缓存 |
8 chocotan 2016 年 6 月 18 日 |
9 SoloCompany 2016 年 6 月 18 日 比较简单的做法是起一个特殊名字的目录存放静态资源,比如 asset/@@version@@/ 打包把整个字符串替换同时目录更名 但建议还是上前端工程吧 |
10 julor 2016 年 6 月 18 日 via Android 你们居然不用前段工具?! gulp 送上 |
11 mifly 2016 年 6 月 18 日 为什么要关掉浏览器缓存呢? 如果只是为了测试,设置浏览器不用缓存,或者打开开发者工具,在 network 那里可以关掉缓存 |
13 teemoer OP @jason19659 = = 你没开玩笑吧 用户量一大 服务器能扛得住? |