springboot项目各组件集成
Posted nightofstreet
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot项目各组件集成相关的知识,希望对你有一定的参考价值。
- swagger-bootstrap-ui
- springboot多数据源项目demo
- ConfigurationProperties + tkmapper + druid
- https://www.cnblogs.com/nightOfStreet/p/11543768.html
- vim 复制 + 删除
- redis 分布式锁实践
- 重复
/** * 校验重复请求 * * @param unrepeatKey 不能重复的key * @return true 重复 */ public boolean isRepeat(String unrepeatKey) { return !setIfAbsent(unrepeatKey, UNREPEAT_VALUE, UNREPEAT_TIME); } public Boolean setIfAbsent(String key, String value, long time) { return redisTemplate.opsForValue().setIfAbsent(key, value, time, TimeUnit.SECONDS); }
-
异步失效 - 处理redis expire方法存在较高的失败率
/** * 增加校验次数&&设置key过期时间 * * @param userId userId */ private void incrCertTimes(Long userId, int existKey) { String key = CertConst.CERT_KEY_PREFIX + userId; // + 1 and expire redisUtils.valueIncrement(key, 1); // 初始化时设置过期时间 if (existKey == 0 || (redisUtils.exists(key) && redisUtils.getExpire(key) == -1)) { // 第二天零点 Date zeroTime = DateUtil.getZeroTime(DateUtil.getAddDayDate(new Date(), 1)); long now = System.currentTimeMillis(); long duration = zeroTime.getTime() - now; // 单位秒 redisUtils.expire(key, (int) duration / 1000); } }
- 重复
以上是关于springboot项目各组件集成的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot和Vue集成视频播放组件——基于SpringBoot和Vue的后台管理系统项目系列博客(二十二)