静态文件的缓存处理

来源:互联网 发布:js实现二维码生成 编辑:程序博客网 时间:2024/05/22 15:39

对js文件,css文件缓存处理

通过配置数据库里面的版本号,每次发版修改版本号。

通过controll层返回版本号到jsp页面,${xxx}获取版本号


1. control 层

 @RequestMapping("")
    public String indexHome( ModelMap model){
        //获取版本
        String STATIC_VERSION = 调用数据库连接获取版本号
        model.put("version",STATIC_VERSION);
        return "index";
    }


2. jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta content="webkit" name="renderer" />
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">
  <base href="${pageContext.request.scheme}://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/">
  <title></title>
    <script>
        var currentVersion = ${version};
    </script>



  <link rel="stylesheet" type="text/css" href="css/index.css?v=${version}" media="all">
    <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" media="screen" />




</head>
<body>
<script src="js/libs/common/MarkerTool.js"></script>
<script data-main="js/main" src="js/libs/require/require.js"></script>
</body>
</html>


3. main.js文件

require.config({

    urlArgs: "r=" + currentVersion,
    baseUrl : 'js',
    shim: {
        underscore: {
            deps:['jquery'],
            exports: '_'
        },
        backbone: {
            deps: [
                'underscore',
                'jquery'
            ],
            exports: 'Backbone'
        }
    },
    paths : {
        jquery : 'libs/jquery/jquery-1.12.4',
        underscore : 'libs/underscore/underscore',
        backbone : 'libs/backbone/backbone'
    },
    waitSeconds: 0
});


0 0
原创粉丝点击