1、后端抖音、微博热搜数据放入redis 10分钟刷新
This commit is contained in:
parent
d9a7b8b0b3
commit
cf9481d1c3
|
|
@ -2,7 +2,7 @@ package com.xjs.consts;
|
|||
|
||||
/**
|
||||
* @author xiejs
|
||||
* @desc redis key常量
|
||||
* @desc redis key常量
|
||||
* @create 2021-12-30
|
||||
*/
|
||||
public class RedisConst {
|
||||
|
|
@ -12,12 +12,17 @@ public class RedisConst {
|
|||
/**
|
||||
* 翻译字典常量key
|
||||
*/
|
||||
public static final String TRAN_DICT= "tranDict";
|
||||
public static final String TRAN_DICT = "tranDict";
|
||||
|
||||
/**
|
||||
* 英语一言常量key
|
||||
*/
|
||||
public static final String ONE_ENGLISH= "oneEnglish";
|
||||
public static final String ONE_ENGLISH = "oneEnglish";
|
||||
|
||||
/**
|
||||
* 热搜常量key
|
||||
*/
|
||||
public static final String HOT = "hot";
|
||||
|
||||
|
||||
//-------------------有效时间-----------------------
|
||||
|
|
@ -25,4 +30,6 @@ public class RedisConst {
|
|||
|
||||
public static final Integer ONE_ENGLISH_EXPIRE = 3; //分钟
|
||||
|
||||
public static final Long HOT_EXPIRE = 10L; //分钟
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package com.xjs.topsearch.controller;
|
|||
|
||||
import com.ruoyi.common.core.web.domain.AjaxResult;
|
||||
import com.ruoyi.common.log.annotation.Log;
|
||||
import com.ruoyi.common.redis.service.RedisService;
|
||||
import com.ruoyi.common.security.annotation.RequiresLogin;
|
||||
import com.xjs.topsearch.domain.*;
|
||||
import com.xjs.topsearch.factory.TopserachFactory;
|
||||
|
|
@ -17,6 +18,10 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import static com.xjs.consts.RedisConst.HOT;
|
||||
import static com.xjs.consts.RedisConst.HOT_EXPIRE;
|
||||
|
||||
/**
|
||||
* 热搜榜控制器
|
||||
|
|
@ -39,6 +44,8 @@ public class ApiTopSearchController {
|
|||
private TopserachFactory<ApiTopsearchWeibo> tianXingTopsearchWeiboFactory;
|
||||
@Autowired
|
||||
private TopserachFactory<ApiTopsearchDouyin> tianXingTopsearchDouyinFactory;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
||||
|
||||
@GetMapping
|
||||
|
|
@ -46,6 +53,11 @@ public class ApiTopSearchController {
|
|||
@Log(title = "获取热搜榜")
|
||||
@RequiresLogin
|
||||
public AjaxResult topSearch() {
|
||||
if (redisService.hasKey(HOT)) {
|
||||
Map<String, List> cacheObject = redisService.getCacheObject(HOT);
|
||||
return AjaxResult.success(cacheObject);
|
||||
}
|
||||
|
||||
//获取全网热搜
|
||||
List<ApiTopsearchAllnetwork> allnetworkList = tianXingTopsearchAllnetworkFactory.topSearchApi();
|
||||
//获取微博热搜
|
||||
|
|
@ -63,6 +75,9 @@ public class ApiTopSearchController {
|
|||
listHashMap.put("baiduList", baiduList);
|
||||
listHashMap.put("weiboList", weiboList);
|
||||
listHashMap.put("douyinList", douyinList);
|
||||
|
||||
//把数据存入redis,十分钟过期
|
||||
redisService.setCacheObject(HOT,listHashMap,HOT_EXPIRE, TimeUnit.MINUTES);
|
||||
return AjaxResult.success(listHashMap);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ public class TianXingTopsearchDouyinFactory implements TopserachFactory<ApiTopse
|
|||
default:
|
||||
apiTopsearchDouyin.setLabel("-");
|
||||
}
|
||||
apiTopsearchDouyin.setWord(json.getString("hotindex"));
|
||||
apiTopsearchDouyin.setWord(json.getString("word"));
|
||||
return apiTopsearchDouyin;
|
||||
}).collect(Collectors.toList());
|
||||
log.info("抖音热搜批量插入成功了嘛---" + apiTopsearchDouyinService.saveBatch(collect));
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
package com.xjs.common.task;
|
||||
|
||||
import com.xjs.XjsOpenApiApp;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
* @since 2022-01-12
|
||||
*/
|
||||
@SpringBootTest(classes = XjsOpenApiApp.class)
|
||||
class DeleteRepeatTaskTest {
|
||||
@Autowired
|
||||
private DeleteRepeatTask deleteRepeatTask;
|
||||
|
||||
@Test
|
||||
void execute() {
|
||||
deleteRepeatTask.execute();
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue