java web项目发版js或css缓存问题解决方案
2016-12-15 09:20
471 查看
java web项目发版js或css缓存问题解决方案
给引入的js或css文件加版本号
如
<%
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
// 加载资源文件
PropertiesResourceFileUtils prfu = new PropertiesResourceFileUtils("version.properties");
%>
<script type="text/javascript" src="<%=basePath%>script/common/common.js?version=<%=prfu.getValue("version") %>"></script>
<link rel="stylesheet" type="text/css" href="<%=basePath%>css/epoch.css?version=<%=prfu.getValue("version") %>">
version.properties文件:
#版本号
version=20161125.02
public class PropertiesResourceFileUtils {
/**
* Properties对象
*/
private Properties properties = new Properties();
/**
* PropertiesResourceFileUtils构造函数
* @param propertiesPath 文件路径
*/
public PropertiesResourceFileUtils(String propertiesPath) {
try {
InputStream in = PropertiesResourceFileUtils.class.getClassLoader().getResourceAsStream(propertiesPath);
if(in != null) {
properties.load(in);
}
}
catch (IOException e) {
e.printStackTrace();
}
}
/**
* 通过KEY获取值
* @param key
* @return
*/
public String getValue(String key){
String value = properties.getProperty(key);
if(StringUtils.isNotBlank(value))
try {
value = new String(value.getBytes("ISO-8859-1"), "UTF-8");
} catch (UnsupportedEncodi
4000
ngException e) {
e.printStackTrace();
}
return value;
}
}
给引入的js或css文件加版本号
如
<%
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
// 加载资源文件
PropertiesResourceFileUtils prfu = new PropertiesResourceFileUtils("version.properties");
%>
<script type="text/javascript" src="<%=basePath%>script/common/common.js?version=<%=prfu.getValue("version") %>"></script>
<link rel="stylesheet" type="text/css" href="<%=basePath%>css/epoch.css?version=<%=prfu.getValue("version") %>">
version.properties文件:
#版本号
version=20161125.02
public class PropertiesResourceFileUtils {
/**
* Properties对象
*/
private Properties properties = new Properties();
/**
* PropertiesResourceFileUtils构造函数
* @param propertiesPath 文件路径
*/
public PropertiesResourceFileUtils(String propertiesPath) {
try {
InputStream in = PropertiesResourceFileUtils.class.getClassLoader().getResourceAsStream(propertiesPath);
if(in != null) {
properties.load(in);
}
}
catch (IOException e) {
e.printStackTrace();
}
}
/**
* 通过KEY获取值
* @param key
* @return
*/
public String getValue(String key){
String value = properties.getProperty(key);
if(StringUtils.isNotBlank(value))
try {
value = new String(value.getBytes("ISO-8859-1"), "UTF-8");
} catch (UnsupportedEncodi
4000
ngException e) {
e.printStackTrace();
}
return value;
}
}
相关文章推荐
- 解决WEB对js、css缓存问题的一种可行方案
- web项目发布 客户端 js css文件缓存的解决办法
- web项目中url-pattern改成'/'后,js、css、图片等静态资源(404)无法访问问题解决办法
- 如何解决HTML5页面js,css缓存问题
- web网站css,js更新后客户浏览器缓存问题,需要刷新才能正常展示的解决办法
- 如何解决网站页面CSS、JS脚本在浏览器的缓存问题
- 解决修改css或js文件,浏览器缓存更新问题。
- 基于md5的解决js,css缓存问题for django
- ASP.net解决CSS与JS的缓存问题
- web网站css,js更新后客户浏览器缓存问题,需要刷新才能正常展示的解决办法
- web网站css,js更新后客户浏览器缓存问题,需要刷新才能正常展示的解决办法
- 解决缓存引发的CSS/JS/IMG问题
- [Filter过滤器]解决缓存网站图片,css,js等问题
- 解决修改css或js文件,浏览器缓存更新问题。
- 解决:maven项目无法引入js,css的问题
- 页面JS缓存问题解决方案
- 解决缓存引发的CSS/JS/IMG问题
- jsp中使用随机数解决js、css缓存问题
- 解决项目里JS文件和CSS编码问题
- gulpfile.js自动化解决js、css缓存问题(添加版本号)