ajax请求或者页面需要缓存,代码如下

缓存页面代码

1 1 private void setClientCache(HttpServletResponse response, int maxAgeSec)
2 2     {
3 3         long maxAgeMill = maxAgeSec * 1000L;
4 4         Date now = new Date();
5 5         response.setHeader("Cache-Control", "max-age=" + maxAgeSec);
6 6         response.addDateHeader("Last-Modified", now.getTime());
7 7         response.addDateHeader("Expires", now.getTime() + maxAgeMill);
8 8     }

 

转载于:https://www.cnblogs.com/notDog/p/4962153.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,你的第一个问题是如何实现前端页面中的省份下拉列表并通过ajax请求加载所有省份,同时在查询时使用Redis缓存数据。 首先,你需要在index.html页面中添加一个省份的下拉列表,可以使用HTML的<select>标签来实现,如下所示: ``` <select id="province"> <option value="">请选择省份</option> </select> ``` 然后,你需要页面加载完成后发送ajax请求,加载所有省份。可以使用jQuery库中的ajax方法来发送请求,如下所示: ``` $(document).ready(function() { $.ajax({ url: 'load_province.php', // 请求的URL地址 type: 'GET', // 请求类型 dataType: 'json', // 返回数据的类型 success: function(data) { // 请求成功后的回调函数 if (data.code == 200) { // 判断返回的状态码是否为200 var provinces = data.data; // 获取返回的省份信息 for (var i = 0; i < provinces.length; i++) { $('#province').append('<option value="' + provinces[i].id + '">' + provinces[i].name + '</option>'); // 将省份信息添加到下拉列表中 } } else { alert(data.msg); // 如果返回的状态码不为200,则弹出错误提示 } }, error: function(xhr, textStatus, errorThrown) { // 请求失败后的回调函数 alert(xhr.status + ': ' + xhr.statusText); // 弹出错误提示 } }); }); ``` 注意,上述代码中的请求地址为'load_province.php',你需要根据自己的实际情况来修改该地址。 接下来,你需要在查询时使用Redis缓存数据。可以使用PHP的Redis扩展来实现,代码如下所示: ``` $redis = new Redis(); $redis->connect('127.0.0.1', 6379); $province_id = $_POST['province_id']; // 获取前端传递过来的省份ID $cache_key = 'province_' . $province_id; // 定义缓存的键名 // 先从缓存中获取数据 $province_data = $redis->get($cache_key); if (!$province_data) { // 如果缓存中不存在数据,则从数据库中查询 $pdo = new PDO('mysql:host=localhost;dbname=test', 'root', '123456'); $stmt = $pdo->prepare('SELECT * FROM province WHERE id = ?'); $stmt->execute(array($province_id)); $province_data = $stmt->fetch(PDO::FETCH_ASSOC); // 将查询结果存入缓存中,缓存时间为60秒 $redis->setex($cache_key, 60, json_encode($province_data)); } echo json_encode(array( 'code' => 200, 'data' => $province_data )); ``` 上述代码中,首先连接了Redis服务器,然后获取前端传递过来的省份ID,并定义了缓存的键名。接着,先从缓存中获取数据,如果缓存中不存在数据,则从数据库中查询,并将查询结果存入缓存中。最后,将查询结果以JSON格式返回给前端。 注意,上述代码中的数据库连接信息和Redis连接信息需要根据自己的实际情况来修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值