@Profile 注解的介绍
@Profile的作用是把一些meta-data進(jìn)行分類(lèi),分成Active和InActive這兩種狀態(tài),然后你可以選擇在active 和在Inactive這兩種狀態(tài)下配置bean,在Inactive狀態(tài)通常的注解有一個(gè)!操作符,通常寫(xiě)為:@Profile("!p"),這里的p是Profile的名字。
三種設(shè)置方式:可以通過(guò)ConfigurableEnvironment.setActiveProfiles()以編程的方式激活。可以通過(guò)AbstractEnvironment.ACTIVE_PROFILES_PROPERTY_NAME (spring.profiles.active )屬性設(shè)置為JVM屬性。作為環(huán)境變量,或作為web.xml 應(yīng)用程序的Servlet 上下文參數(shù)。也可以通過(guò)@ActiveProfiles 注解在集成測(cè)試中以聲明方式激活配置文件。作用域:作為類(lèi)級(jí)別的注解在任意類(lèi)或者直接與@Component 進(jìn)行關(guān)聯(lián),包括@Configuration 類(lèi)作為原注解,可以自定義注解作為方法的注解作用在任何方法注意:如果一個(gè)配置類(lèi)使用了Profile 標(biāo)簽或者@Profile 作用在任何類(lèi)中都必須進(jìn)行啟用才會(huì)生效,如果@Profile({“p1”,"!p2"}) 標(biāo)識(shí)兩個(gè)屬性,那么p1 是啟用狀態(tài) 而p2 是非啟用狀態(tài)的。例如:@Profile(“dev”)public @Bean(“activityMongoFactory”)MongoDbFactory activityMongoFactoryDev(MongoClient activityMongo) { return new SimpleMongoDbFactory(activityMongo, stringValueResolver.resolveStringValue("${mongodb.dev.database}"));}
總結(jié)
以上是生活随笔為你收集整理的@Profile 注解的介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 知识产权产业化的发展未来
- 下一篇: LM317,线性稳压电源总结