spring常用注解备忘: @Configuration、@ConfigurationProperties、@Bean、@Qualifier

1,下面先给出这四个注解的使用场景代码:

A,这四个注解的使用如下:

/**
 * 卡牛征信
 */
@Configuration
@ConfigurationProperties(prefix="cube.partner.conifg.kn")
public class KNApiProviderConfig {
    String name="KNApiProvider";
    
       //生产环境URL
       String prodUrl;

       //测试环境URL
       String testUrl;

       //是否测试模式
       boolean testMode;
     
       String appkey;
        
       String clientId;
       
       String keyStoreAlias;

       @Bean
       @Qualifier("KNApiProvider")
       public ApiProvider createKNApiProvider() {

           ApiConfig config = new ApiConfig();
           config.setName(name);
           config.setClientId(clientId);
           config.setAppkey(appkey);
           config.setTestUrl(testUrl);
           config.setProdUrl(prodUrl);
           config.setTestMode(testMode);
           config.setKeyStoreAlias(keyStoreAlias);

           return new KNApiProvider(config);

       }
       //此处省略setter 和 getter 方法   
}

B,以下是通过@Autowired 调用KNApiProvider Bean

 

2,注解详解,如上所示:

@Configuration 作为 Spring对Bean的显示配置,用于构建bean的定义。官方解析:@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。

@ConfigurationProperties 是对"@Configuration"注解类的属性配置说明。如:@ConfigurationProperties(prefix="cube.partner.conifg.kn")。这样该注解类的属性就可以配置在文件中,如以上类“KNApiProviderConfig”的属性可以在application.yml配置。如:

cube.partner.conifg.kn:
    testMode: true
    appkey: ******
    clientId: ******
    keyStoreAlias: ***********
    testUrl: "https://test.*******.com"

@Bean 对Bean的定义。

@Qualifier 对Bean的命名

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值