Spring Boot——条件注解和条件装配

Spring Boot的条件注解条件装配是用于根据特定条件来控制Bean的创建和装配的重要特性。条件注解可以根据不同的条件来判断是否满足某种条件,从而决定是否创建特定的Bean。以下是条件注解和条件装配的使用方法:

一、条件注解示例

  1. @ConditionalOnClass 当指定的类存在于类路径中时才会创建Bean。
  2. @ConditionalOnBean 当指定的Bean存在时才会创建当前Bean。
  3. @ConditionalOnProperty 基于配置属性的条件注解,根据配置文件中的属性值决定是否创建Bean。

代码如下:

public class MyService {
    private String message;

    public MyService(String message) {
        this.message = message;
    }

    public String getMessage() {
        return message;
    }
}

二、条件装配示例

创建一个自动配置类 MyServiceAutoConfiguration ,根据条件注解来控制是否自动配置 MyService Bean:

import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConditionalOnClass(MyService.class)
public class MyServiceAutoConfiguration {

    @Bean
    public MyService myService() {
        return new MyService("Hello, this is auto-configured message");
    }
}

在这个示例中, MyServiceAutoConfiguration 类使用了 @ConditionalOnClass(MyService.class) 注解,表示只有当 MyService 类存在于类路径中时才会自动配置 MyService Bean。如果 MyService 类不存在,则不会创建该Bean。

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值