package com.yeshi.fanli.job;
|
|
import java.util.Date;
|
import java.util.List;
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
import com.qcloud.cos.model.COSObjectSummary;
|
import com.qcloud.cos.model.ObjectListing;
|
import com.yeshi.fanli.util.StringUtil;
|
import org.yeshi.utils.tencentcloud.COSManager;
|
|
//COS图片清理
|
@Component
|
public class CosClearJob {
|
// 每天执行一次删除分享图
|
|
// 晚上3点进行
|
@Scheduled(cron = "0 0 3 * * ? ")
|
public void clearShareGoodsImgEveryDay() {
|
String nextMarker = null;
|
ObjectListing list = null;
|
do {
|
list = COSManager.getInstance().getObjectList("sharegoods/share_", nextMarker, 500);
|
nextMarker = list.getNextMarker();
|
List<COSObjectSummary> objectSummaries = list.getObjectSummaries();
|
for (COSObjectSummary cosObjectSummary : objectSummaries) {
|
// 文件路径
|
String key = cosObjectSummary.getKey();
|
// 获取最后修改时间
|
Date lastModified = cosObjectSummary.getLastModified();
|
if (System.currentTimeMillis() - lastModified.getTime() > 1000 * 60 * 60 * 24 * 1L) {
|
boolean success = COSManager.getInstance().deleteFile(key);
|
System.out.println(success);
|
}
|
}
|
} while (!StringUtil.isNullOrEmpty(nextMarker));
|
}
|
}
|