@ConditionalOnProperty的用法

本文共 829 字,预计阅读时间 3 分钟

在spring boot中,当需要控制配置类是否生效时可以使用@ConditionalOnProperty注解来控制@Configuration是否生效。当然也可以控制@Component等注解。

复制代码
package com.zys.example.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Configuration;

import javax.annotation.PostConstruct;

/**
 * 系统初始化操作
 */
@Configuration
@Slf4j
@ConditionalOnProperty(prefix = "application",name = "enable",havingValue = "true")
public class WebAppConfig {

    @PostConstruct
    public void init() {
        log.info(">>>系统正在进行初始化......");
        
    }
}
复制代码

上述需要在配置文件开启此配置

application.enable=true

当不在配置配置或配置其值是false时则此配置类不会生效。在系统启动时也就不会打印这个日志信息。只有设置为true时才会打印。

@ConditionalOnProperty是通过havingValue的值与配置文件中的值对比,返回为true则配置类生效,反之失效。其中prefix是配置的前缀,name是属性名。

posted @   钟小嘿  阅读(3870)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示