spring常用註解備忘: @Configuration、@ConfigurationProperties、@Bean、@Qualifier
阿新 • • 發佈:2018-12-18
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 是對"
cube.partner.conifg.kn: testMode: true appkey: cQANOuVTlCfl9l4Tebl8GSjlQ#&GVf6v clientId: 6DbOmgvHMCM04N8 keyStoreAlias: 5nrcdcd1V6wu4V4MJpVbHPXVrqu5XpWF testUrl: "https://test.cardniu.com"
@Bean 對Bean的定義。
@Qualifier 對Bean的命名