@ConditionalOnProperty的作用和用法

在spring boot中有时候需要控制配置类是否生效,可以使用@ConditionalOnProperty注解来控制@Configuration是否生效.

配置类代码:

@Configuration
@ConditionalOnProperty(prefix = "filter",name = "loginFilter",havingValue = "true")
public class FilterConfig {//prefix为配置文件中的前缀,//name为配置的名字//havingValue是与配置的值对比值,当两个值相同返回true,配置类生效.@Beanpublic FilterRegistrationBean getFilterRegistration() {FilterRegistrationBean filterRegistration  = new FilterRegistrationBean(new LoginFilter());filterRegistration.addUrlPatterns("/*");return filterRegistration;}
}

配置文件中的代码

filter.loginFilter=true

测试

当配置文件中值为true时:输出了"过滤器"三个字,说明loginFilter生效了,说明配置类生效了.

当配置文件中值为false时:没有输出了"过滤器"三个字,说明loginFilter没有生效,说明配置类没有生效.

总结:

通过@ConditionalOnProperty控制配置类是否生效,可以将配置与代码进行分离,实现了更好的控制配置.
@ConditionalOnProperty实现是通过havingValue与配置文件中的值对比,返回为true则配置类生效,反之失效.

@ConditionalOnProperty的作用和用法相关推荐

  1. PreTranslateMessage作用和用法

    PreTranslateMessage作用和用法 PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗体的消息都要通过这里,比較经常使用,当 ...

  2. java package作用_java import、package作用与用法

    java import.package作用与用法 有些人写了一阵子Java,可是对於Java 的package 跟import 还是不太了解很多人以為原始码 .java 档案中的import 会让编译 ...

  3. MySQL数据类型中DECIMAL的作用和用法

    在MySQL数据类型中,例如INT,FLOAT,DOUBLE,CHAR,DECIMAL等,它们都有各自的作用,下面我们就主要来介绍一下MySQL数据类型中的DECIMAL类型的作用和用法. 一般赋予浮 ...

  4. php中pre标签,html中pre标签与code标签的作用与用法

    HTML 标签 定义和用法 pre 元素可定义预格式化的文本.被包围在 pre 元素中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. 标签的一个常见应用就是用来表示计算机的源代码. 可以导致 ...

  5. PHP中的常见魔术方法功能作用及用法实例

    这篇文章主要介绍了PHP中的常见魔术方法功能作用及用法实例,本文讲解了构造函数和析构函数__construct()和__desctruct()以及属性重载(Property Overloading)_ ...

  6. 、简述global关键字的作用_在C#编程中global关键字的作用及其用法

    在C#编程中,global 是 C# 2.0 中新增的关键字,理论上说,如果代码写得好的话,根本不需要用到它.今天就为大家展示下global关键字的作用及其用法,希望对大家学习C#编程有所帮助. 假设 ...

  7. chrome中Blackbox Script 黑盒脚本作用及用法

    chrome中Blackbox Script 黑盒脚本作用及用法 Blackbox Script功能 每天前端人员在调试代码的时候,都可能会遇到代码调试着会进入第三方库文件,带来很多没必要的调试,不方 ...

  8. C#中using关键字的作用及其用法(转)

    C#中using关键字的作用及其用法 using的用途和使用技巧.     using关键字微软MSDN上解释总共有三种用途:     1.引用命名空间.     2.为命名空间或类型创建别名.    ...

  9. Vue 中的 v-cloak 作用及用法

    v-cloak 的作用和用法 用法: 这个指令保持在元素上直到关联实例结束编译.和 CSS 规则如 [v-cloak] { display: none } 一起用时,这个指令可以隐藏未编译的 Must ...

最新文章

  1. RavenDB FS 安装使用 介绍
  2. antd 函数组件_react函数组件中引用antd<Form/>组件demo
  3. python从list中取出连续的数_python list 中找连续的数字(由网友处学习)
  4. jquery 获得table 行数
  5. 力扣编辑距离系列问题总结
  6. 模拟集成电路学习心得(不见牛人,不懂世界之大!!!)
  7. 如何获取Java用户输入?
  8. 图像色彩空间之RGB与HSI
  9. 年底购物狂欢,移动支付安全不容忽视
  10. android 多线程 handler使用方法
  11. 数据挖掘导论阅读笔记第一章:绪论
  12. 键盘 计算机代码,键盘钩子示例
  13. 小程序用户登录权限设置
  14. 西瓜书习题 - 4.决策树
  15. HDU-6357Hills And Valleys(用最长可重复公共子序列求最长非递减子序列)
  16. css3图片放大溢出,用canvas调整图像大小 - css溢出问题
  17. Calander使用心得
  18. 深度学习原理-----线性回归+梯度下降法
  19. 职教计算机录取分数,今年高职院校录取分数线是多少?
  20. 服务器网卡性能下降的原因,网卡的好坏会影响网速吗

热门文章

  1. php ceil 漏洞,【技术分享】CmsEasy前台无限制GetShell
  2. 计算机网络 无线通信与PPP
  3. ViewPager引导页,Xlv网络获取,频道管理
  4. android 三星调用拍照功能吗,Android 相机开发 三星拍照崩溃修改解决 详细
  5. 混乱(转载,同龄人)
  6. ZIP压缩包如何删除密码
  7. python为txt添加表头_使用将标题行添加到多个.txt文件
  8. 在命令框(cmd)中对数据库进行“增删改查”
  9. 腾讯T2大牛亲自讲解!Android猿面试(附视频)
  10. 大咖 | 香港中文大学汤晓鸥教授:人工智能让天下没有难吹的牛!