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

Spring的条件加载

条件加载的基本认知

添加加载是让我们根据需求来加载对于的Bean,并不是全部进行加载,是通过条件判断来进行加载。

这个是条件加载需要使用到的注解,它是Spring里面的,这个注解可以标注在类、方法上面,通过Condition进行判断,来决定是否加载,这个value是一个数组,也就是可能有多个且都需要满足条件才行。

这里看到它有两个参数,且都需要满足条件才会返回true。

第一个参数ConditionContext是用来获取系统信息的。

BeanDefinitionRegistry getRegistry()从中可以获取到Bean的定义

ConfigurableListableBeanFactory getBeanFactory();用于获取Bean的工程

Environment getEnvironment()用于获取配置信息

ResourceLoader getResourceLoader用于获取资源信息

ClassLoader getClassLoader()获取类加载信息

第二个参数AnnotatedTypeMetadata是用来获取注解或者方法的原数据

条件加载的基本使用

定义一个测试类来进行试验,定义一个方法进行测试

在方法里面创建一个SimpleMetadataReaderFactory对象用于获取加载资源的元数据

可以在src文件夹下创建一个新的包,在这个包中进行定义一个随机数生成期,也就是对于上面的那个图进行创建。

这个类型必须是要泛型的,因为可能生成的类型是不一致的,可能为int或Boolean类型。

之后创建几个不同的调用如int或Boolean类型进行使用,需要实现Condition接口,选择的包是要在context下面的。

之后在里面完成条件判断

同样的操作在另一个Condition实现,如int类型的。

之后就是应用条件配置,也就是需要创建一个配置类,在这个类中对之前的两个类型的Condition进行调用。

之后需要去application.yml进行定义配置参数,这里定义一个int类型表示,生成的随机数是int类型的。

这里的运用都是在方法上进行使用的,但从Condition这个注解上可以得知,也可以在类上面进行使用。

这里表示当配置文件中的Condition的second为true的时候才会生效,之后定义一个类来进行使用。


http://www.kler.cn/a/515444.html

相关文章:

  • VUE elTree 无子级 隐藏展开图标
  • 软件安全性测试报告如何编写?
  • 【Linux知识】Linux常见压缩文件格式以及对应命令行
  • 从密码学原理与应用新方向到移动身份认证与实践
  • RV1126+FFMPEG推流项目源码
  • windows下本地部署安装hadoop+scala+spark-【不需要虚拟机】
  • Github配置ssh详细步骤
  • Linux 系统服务开机自启动指导手册
  • owasp SQL 手工注入 - 02 (技巧)
  • Android 问题00_IncompatibleComposeRuntimeVersionException
  • Fastapi + vue3 自动化测试平台(4)-- fastapi分页查询封装
  • 前端jquery 实现文本框输入出现自动补全提示功能
  • yolov11 推理保存json
  • Windows 环境下 Docker Desktop + Kubernetes 部署项目指南
  • 免费SSL证书申请,springboot 部署证书
  • 【自动化测试】—— Appium使用保姆教程
  • SoftGNSS软件接收机源码阅读(一)程序简介、运行调试、执行流程
  • 数据结构——树和二叉树
  • Linux 下注册分析(1)
  • 用AI生成PPT,办公效率提升新方式
  • 基于 Vue3 + Canvas + Web Worker 实现高性能图像黑白转换工具的设计与实现
  • Linux通过docker部署京东矩阵容器服务
  • canvas基础
  • 【EXCEL_VBA_实战】多工作薄合并深入理解
  • Vue.js 配置路由:基本的路由匹配
  • grid 布局react组件可以循数据自定义渲染某个数据 ,或插入某些数据在某个索引下