欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Springboot常用注解及作用說明

 更新時間:2023年08月17日 10:52:03   作者:信仰_273993243  
這篇文章主要介紹了Springboot常用注解及作用說明,Springboot開發(fā)中注解是非常重要的不可或缺的,那么Springboot中有哪些常用的注解呢,今天我們就來看一下這些注解和其作用,需要的朋友可以參考下

Springboot常用注解

在開發(fā)中看到一些定義的啟動器Configuration

@Configuration
@ConditionalOnClass(JestClient.class)
@EnableConfigurationProperties(ConfigBean.class)
@AutoConfigureAfter(GsonAutoConfiguration.class)
public class JestAutoConfiguration {
}

或者我們經(jīng)常使用的PageHelper

@Configuration
@ConditionalOnBean(SqlSessionFactory.class)
@EnableConfigurationProperties(PageHelperProperties.class)
@AutoConfigureAfter(MybatisAutoConfiguration.class)
public class PageHelperAutoConfiguration {
}

其實(shí)上面的注解都是為了設(shè)置某某Configuration加載到項(xiàng)目所需要的一些條件,或者是設(shè)計該Configuration加載的先后順序,下面看下這些注解的含義

1、@ConditionalOnClass(KafkaTemplate.class)

這個注解通俗的說就是Spring工程中引用了KafkaTemplate類的包,才會構(gòu)建這個bean

2、@AutoConfigureBefore 和 @AutoConfigureAfter

//使用方式
@AutoConfigureBefore(AAAA.class)
public class CCCC {
	//說明 CCCC將會在AAAA之前加載
}
@AutoConfigureAfter(AAAA.class)
public class CCCC {
	//說明 CCCC將會在AAAA之后加載
}

3、@EnableConfigurationProperties

//使用方式
@ConfigurationProperties(prefix = "spring.elasticsearch.jest")
public class ConfigBean {
}
//僅通過@ConfigurationProperties是?法完成ConfigBean在spring中使?的
@Configuration
@EnableConfigurationProperties({ConfigBean.class}) 
public class JestAutoConfiguration {	
}

?句話描述@EnableConfigurationProperties的作用:把jar里面的@ConfigurationProperties的類注?到spring中使?

4、@ConditionalOnProperty注解

//使用方式
@ConditionalOnProperty(prefix = "email",name= "enable",havingValue = "true")
//必須yml中必須包含 prefix.enable=true 才會生效

一般修飾在帶有@Configuration注解的類上面,控制配置類是否生效,可以使用@ConditionalOnProperty注解來控制

  1. name或value是必填項(xiàng)
  2. matchIfMissing:當(dāng)未找到對應(yīng)配置是否匹配(默認(rèn)不匹配)
  3. 常用組合:prefix+name+havingValue 判斷是否包含某屬性且屬性值與havingValue一致

例如:

//nacos的配置
@ConditionalOnProperty(name = "spring.cloud.nacos.config.enabled", matchIfMissing = true)

查詢包含有spring.cloud.nacos.config.enabled配置項(xiàng),如果沒有找到,默認(rèn)還是開啟。

5、@Profile注解

//使用方式
@Configuration
public class MainConfigOfProfile{
	//@Profile關(guān)聯(lián)Yellow類,當(dāng)容器環(huán)境包含該"test",才激活此注解,Yellow這個bean才會注冊到容器
	@Profile("test") 
	@Bean
	public Yellow yellow(){
		return new Yellow();
	}
}
//2.設(shè)置需要激活對應(yīng)的@Profile
applicationContext.getEnvironment().setActiveProfiles("test1");

@Profile的作用:當(dāng)容器根據(jù)“標(biāo)識”激活對應(yīng)的@Profile注解時,其所關(guān)聯(lián)的bean類才會注冊到容器。

但如果容器不存在在對應(yīng)的@Profile所配置的值時,就不生成bean實(shí)例。

6、@ConditionalOnWebApplication

當(dāng)前項(xiàng)目是Web項(xiàng)目的條件下。

7、@ConditionalOnMissingBean 注解的作用

它是修飾bean的一個注解,主要實(shí)現(xiàn)的是,當(dāng)你的bean被注冊之后,如果而注冊相同類型的bean就不會成功,它會保證Bean在容器中只有一個

到此這篇關(guān)于Springboot常用注解及作用說明的文章就介紹到這了,更多相關(guān)Springboot常用注解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論