当前位置: 首页 > article >正文

开发指南065-缩减包

平台集成了很多应用,例如如下代码:
public void put(String key, String value){
    if ("Redis".equals(QLMContants.cacheMode)){
        redisutils.set(key,value);
    }
    else if ("Caffeine".equals(QLMContants.cacheMode)){
        CaffeineUtils.put(key,value);
    }
}

可以根据配置选择使用redis还是内存,但是却增加了包的大小,而且真正要命的问题是,redis是自动链接的,虽然不影响使用,但是启动时报个redis链接不上还是让人不舒服,所以这种情况下需要缩减包或者屏蔽不必要的报错

1、@ComponentScan里通过excludeFilters过滤掉不需要的包:

@ComponentScan(
  value={"org.qlm","com.zDHR","com.zFMS"},
  excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes =
          {HuaweiOBSConfig.class, MinioConfig.class,WeChartPayConfig.class, WeXinPayUtilV3.class,RedisUtils.class})

2、但是上述作法会引起其他异常

@Autowired
private RedisUtils redisUtils;

这种写法就好报错,需修改为

@Autowired(required = false)
private RedisUtils redisUtils;

3、需要进一步屏蔽健康检查

配置文件中加入:

management:
  health:
    redis:
      enabled: false

4、还可使用条件注入语法,根据配置选择创建和注入


http://www.kler.cn/news/335273.html

相关文章:

  • 移动WSL到其他盘
  • MATLAB中正则表达式的全面应用与实践
  • 如何使用WPS软件里的AI工具?
  • 简单部署vue+springboot项目
  • 汽车革命下半场AI先锋:广汽为新“智”汽车装配大模型“底盘”
  • 计算机网络:三次握手和四次挥手详解
  • 使用NumPy进行线性代数的快速指南
  • Linux自动化构建工具Make/Makefile
  • 基于yolov8深度学习的120种犬类检测与识别系统python源码+onnx模型+评估指标曲线+精美GUI界面目标检测狗类检测犬类识别系统
  • 三维模型点云化工具V1.0使用介绍:将三维模型进行点云化生成
  • 笔记整理—linux进程部分(6)进程间通信、alarm和pause
  • 使用Pytorch构建自定义层并在模型中使用
  • 架构设计笔记-5-软件工程基础知识-3
  • 【Springdoc-openapi】基于SpringBoot3.3.x版本③集成Springdoc
  • windows C++-创建基于代理的应用程序(上)
  • 数据和算力共享
  • 【bash】删除本地所有分支
  • rabbitmq消费者应答模式
  • C++基础:enum class作用域枚举 (C++11)
  • 深度扩展AntSK,让.NET Aspire助力您的AI项目