kim.zhang

风在前,无惧!


  • 首页

  • 标签42

  • 分类12

  • 归档94

  • 搜索

Conditional.md

发表于 2020-08-10 更新于 2021-11-21 分类于 SpringBoot
本文字数: 452 阅读时长 ≈ 1 分钟

条件注解可以解决策略模式多种实现类的问题。

使用自定义条件注解需要自己编写一个类实现conidtion接口,并在配置类中使用@conditional注解。

1
2
3
4
5
@Bean
@Conditional(DatabaseCondition.class)
public Connect mysql(){
return new MySql(this.host,this.port);
}

也可以使用spring自带的条件注解:

1
2
3
4
5
@Bean
@ConditionalOnProperty(value = "database",havingValue = "mysql",matchIfMissing = true)
public Connect mysql(){
return new MySql(this.host,this.port);
}

value的值是配置文件中的key。matchIfMissing相当于默认值。当在配置文件中找不到database的配置项时,默认将MySql这个类加入到IOC容器中。

一毛也是爱~
Kim.Zhang 微信支付

微信支付

# 注解
Configuration.md
文件复制.md
Kim.Zhang

Kim.Zhang

且行且珍惜
94 日志
12 分类
42 标签
E-Mail Weibo
粵ICP备19091267号 © 2019 – 2022 Kim.Zhang | 629k | 9:32
本站总访问量 4 次 | 有 309 人看我的博客啦 |
博客全站共176.7k字
载入天数...载入时分秒...
0%