springboot项目各组件集成

Posted nightofstreet

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot项目各组件集成相关的知识,希望对你有一定的参考价值。

  1. swagger-bootstrap-ui 
    1. https://blog.csdn.net/u010192145/article/details/79216037
  2. springboot多数据源项目demo
    1. ConfigurationProperties + tkmapper + druid
    2. https://www.cnblogs.com/nightOfStreet/p/11543768.html
  3. vim 复制 + 删除
    1. https://blog.csdn.net/ztf312/article/details/83025297
    2. https://segmentfault.com/a/1190000018498395?utm_source=tag-newest
  4. redis 分布式锁实践
    1. 重复
      /**
           * 校验重复请求
           *
           * @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);
          }

       

    2.  异步失效 - 处理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的后台管理系统项目系列博客(二十二)

linux服务器中Jenkins集成gitGradle持续构建Springboot项目

Apifox调用Security6.0权限接口

大数据-kafka学习——集成SpringBoot

ESB设计器各组件使用说明

个人项目实战2,springboot集成(Html+vue.js)前端框架