Spring Boot 如何在Mapstruct中使用@Conditional

ulydmbyx  于 5个月前  发布在  Spring
关注(0)|答案(1)|浏览(123)

我想使用Sping Boot @Conditional和Mapstruct。
我想使用属性文件限制Spring Bean的创建。我使用@Conditional进行相同的操作。
如何为mapstruct bean实现它?

9rygscc1

9rygscc11#

您可以使用条件bean创建Configuration类:

@Configuration
class ConditionalBeanConfiguration {

  @Bean
  @Conditional... <--
  ConditionalBean conditionalBean(){
    return new ConditionalBean();
  };

}

字符串
所以它可能看起来像:

@Configuration
class MapperBeanConfiguration {

    @Bean
    @ConditionalOnProperty(name = "my.property.enabled", havingValue = "true")
    public MyMapper myMapperImplV1() {
        return new MyMapperImplV1();
    }

    @Bean
    @ConditionalOnProperty(name = "my.property.enabled", havingValue = "false", matchIfMissing = true)
    public MyMapper myMapperImplV2() {
        return new MyMapperImplV2();
    }

}


你可以在这篇文章中了解更多:working with springs conditional annotation for conditional bean registration

相关问题