当前位置: 首页 > news >正文

哪个网站平面设计做的好用别人公司名字做网站违法么

哪个网站平面设计做的好,用别人公司名字做网站违法么,网站外链如何建设最有用,物业管理系统功能简介 在 Spring Boot 中,你可以使用多种方法来实现自动删除超时元素的 List 或 Map。以下是两种常见的方式: 如果你需要简单的功能并且不介意引入外部依赖,可以选择 Guava Cache。如果你想要更灵活的控制,使用 Spring 的调度功能…

简介

在 Spring Boot 中,你可以使用多种方法来实现自动删除超时元素的 List 或 Map。以下是两种常见的方式:

  • 如果你需要简单的功能并且不介意引入外部依赖,可以选择 Guava Cache。
  • 如果你想要更灵活的控制,使用 Spring 的调度功能也是一个不错的选择。

1. 使用 Scheduled Task

你可以使用 Spring 的 @Scheduled 注解来定期清理过期的元素。

import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;@Component
@EnableScheduling
public class CacheManager {//by https://zhengkai.blog.csdn.net/// 存储数据的 Map,使用 ConcurrentHashMap 以支持并发private final Map<String, Long> cacheMap = new ConcurrentHashMap<>();// 添加元素,设置当前时间戳public void put(String key) {cacheMap.put(key, System.currentTimeMillis());}// 定期清理超时元素@Scheduled(fixedRate = 60000) // 每分钟执行一次public void cleanUp() {long currentTime = System.currentTimeMillis();long timeout = 30 * 60 * 1000; // 30 分钟超时Iterator<Map.Entry<String, Long>> iterator = cacheMap.entrySet().iterator();while (iterator.hasNext()) {Map.Entry<String, Long> entry = iterator.next();if (currentTime - entry.getValue() > timeout) {iterator.remove(); // 删除超时元素}}}// 获取元素public Boolean get(String key) {return cacheMap.containsKey(key);}
}

在上面的代码中,我们创建了一个 CacheManager 类,它使用 ConcurrentHashMap 来存储元素及其添加时间。@Scheduled 注解用于定义定期清理超时元素的任务。定期任务每分钟执行一次,检查并删除 30 分钟之前添加的元素。

2. 使用 Guava Cache

如果你希望更简单地管理缓存,可以使用 Guava 的 Cache。它提供了过期策略的支持。

示例代码

首先,确保在 pom.xml 中添加 Guava 依赖:

<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>33.3.1-jre</version>
</dependency>

然后,使用 Guava Cache:

import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import org.springframework.stereotype.Component;import javax.annotation.PostConstruct;
import java.util.concurrent.TimeUnit;@Component
public class CacheManager {private Cache<String, String> cache;@PostConstructpublic void init() {// 创建一个支持过期的缓存,30分钟后过期。 by https://zhengkai.blog.csdn.net/cache = CacheBuilder.newBuilder().expireAfterWrite(30, TimeUnit.MINUTES).build();}// 添加元素public void put(String key, String value) {cache.put(key, value);}// 获取元素public String get(String key) {return cache.getIfPresent(key);}
}

在这个例子中,我们使用 Guava 的 CacheBuilder 创建了一个具有 30 分钟自动过期策略的缓存。使用 put 方法可以添加元素,而使用 getIfPresent 方法可以获取当前元素。

http://www.yayakq.cn/news/955931/

相关文章:

  • 有道网站收录提交入口在床上做很黄很暴力网站
  • 移动端网站开发流程阆中市网站建设服务
  • vivo手机为什么建设网站把网站生成app的免费平台
  • 网站域名绑定好处云南建网科技有限公司
  • 西安网站建设总部江苏汇算清缴在哪个网站做
  • 江苏省城乡建设厅建设网站网站开发报价技巧
  • 北京响应式网站建设费用做设计必知网站
  • 网站建设选择什么模式免费wordpress域名能绑定吗
  • 山东网站建设优化技术网站死链接提交
  • 360网站弹窗推广怎么做的阿里云备案 网站服务内容
  • 电子商务网站推广的方式有哪些北京王府井集团股份有限公司
  • 做服装设计看哪些网站外链怎么做
  • 伍佰亿搜索引擎网站系统建站合肥网络公司seo
  • pc端兼手机端网站模板营业执照几年不审自动注销
  • 做移动网站优化快速装饰画
  • 新云手机站官网做网站平台公司
  • 深圳城乡和建设局网站首页鞍山企业网站建设
  • 上海网站建设最好的公司排名wordpress通过图片id获取路径
  • 企业网站怎么做排名前端转网站建设
  • 上海信息技术做网站网站建设步骤详解视频教程
  • 中牟建设局网站网站建设价目
  • e4a做网站软件单页面网站怎么做的
  • 艺术类 网站建设方案北京高端网站定制公司哪家好
  • 自建网站国家审核要多久商业合作及运营方案
  • 给公司建立网站不可以做到的网页排版精美的中文网站
  • html5响应式网站psdWordPress大胡子
  • 新开家政如何做网站网站建设与推广协议书
  • 开发网站网络公司有哪些怎么安装wordpress主题
  • 网站建设收费标准策划软件技术包括哪些
  • 58同城网站官网wordpress ?p=29