You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package com.example.demo.Util;
import com.example.demo.service.GeneralService; import com.example.demo.service.WorkbenchService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component;
import java.util.List;
@Component public class CacheRefreshTask { @Autowired private GeneralService generalService;
private static final Logger logger = LoggerFactory.getLogger(CacheRefreshTask.class);
private final WorkbenchService workbenchService;
@Autowired public CacheRefreshTask(WorkbenchService workbenchService) { this.workbenchService = workbenchService; }
// 每小时执行一次(1分0秒)
@Scheduled(cron = "0 1 * * * ?") public void refreshCache() { List<String> markets = generalService.getMarket(); try { workbenchService.getCardCache(markets); // 内部会重新查询并写入缓存
logger.info("缓存刷新成功:" + new java.util.Date()); } catch (Exception e) { logger.error("缓存刷新失败:" + e.getMessage(), e); } } }
|