//https://blog.csdn.net/m0_62866192/article/details/121438008
@Autowired
private StringRedisTemplate redisTemplate;
public Set<String> getTeamAtShanghai(String deptId){
try {
Set<String> members = redisTemplate.opsForSet().members(MarketManagerConstant.REDIS_KEY_SHANGHAI + deptId);
if (CollectionUtil.isNotEmpty(members)) {
return members;
} else {
List<SysDeptBO> noDeleteDeptSubByDeptId = iSysDeptReadService.getNoDeleteDeptSubByDeptId(deptId, true);
if (CollectionUtil.isEmpty(noDeleteDeptSubByDeptId)) {
return null;
}
List<String> collect = noDeleteDeptSubByDeptId.stream().map(SysDeptBO::getDeptId).collect(Collectors.toList());
Set<String> deptSet = new HashSet<>(collect);
String[] stringDept = deptSet.toArray(new String[deptSet.size()]);
redisTemplate.opsForSet().add(MarketManagerConstant.REDIS_KEY_SHANGHAI + deptId, stringDept);
redisTemplate.expire(MarketManagerConstant.REDIS_KEY_SHANGHAI + deptId, 24, TimeUnit.HOURS);
return deptSet;
}
}catch (Exception e){
log.info("获取上海团队信息异常"+ ExceptionUtils.getStackTrace(e));
}
return null;
}
Redis使用案例
最新推荐文章于 2025-08-15 21:41:23 发布
该代码段展示了如何利用@Autowired的StringRedisTemplate从Redis中获取上海团队成员。首先尝试从缓存中获取成员,如果缓存为空,则通过iSysDeptReadService查询子部门并转化为Set,将结果存入Redis并设置24小时过期时间。异常时返回null。
533

被折叠的 条评论
为什么被折叠?



