SpringBoot核心注解有哪些
SpringBoot核心注解有:@SpringBootApplication*、@Configuration、@SpringBootConfiguration、@ComponentScan、@Conditional等等。
1.@SpringBootApplication*
用于Spring主类上最最最核心的注解,自动化配置文件,表示这是一个SpringBoot项目,用于开启SpringBoot的各项能力。
相当于@SpringBootConfigryation、@EnableAutoConfiguration、@ComponentScan三个注解的组合。
2.@EnableAutoConfiguration
允许SpringBoot自动配置注解,开启这个注解之后,SpringBoot就能根据当前类路径下的包或者类来配置Spring Bean。
例如:
当前路径下有MyBatis这个Jar包,MyBatisAutoConfiguration 注解就能根据相关参数来配置Mybatis的各个Spring Bean。
3.@Configuration
Spring 3.0添加的一个注解,用来代替applicationContext.xml配置文件,所有这个配置文件里面能做到的事情都可以通过这个注解所在的类来进行注册。
4.@SpringBootConfiguration
@Configuration注解的变体,只是用来修饰Spring Boot的配置而已。
5.@ComponentScan
Spring 3.1添加的一个注解,用来代替配置文件中的component-scan配置,开启组件扫描,自动扫描包路径下的@Component注解进行注册bean实例放到context(容器)中。
6.@Conditional
Spring 4.0添加的一个注解,用来标识一个Spring Bean或者Configuration配置文件,当满足指定条件才开启配置
7.@ConditionalOnBean
组合@Conditional注解,当容器中有指定Bean才开启配置。
8.@ConditionalOnMissingBean
组合@Conditional注解,当容器中没有值当Bean才可开启配置。
9.@ConditionalOnClass
组合@Conditional注解,当容器中有指定Class才可开启配置。
10.@ConditionalOnMissingClass
组合@Conditional注解,当容器中没有指定Class才可开启配置。
11.@ConditionOnWebApplication
组合@Conditional注解,当前项目类型是WEB项目才可开启配置。
项目有以下三种类型:
① ANY:任意一个Web项目
② SERVLET: Servlet的Web项目
③ REACTIVE :基于reactive-base的Web项目
12. @ConditionOnNotWebApplication
组合@Conditional注解,当前项目类型不是WEB项目才可开启配置。
13.@ConditionalOnProperty
组合@Conditional注解,当指定的属性有指定的值时才可开启配置。
14.@ConditionalOnExpression
组合@Conditional注解,当SpEl表达式为true时才可开启配置。
15.@ConditionOnJava
组合@Conditional注解,当运行的Java JVM在指定的版本范围时才开启配置。
16.@ConditionalResource
组合@Conditional注解,当类路径下有指定的资源才开启配置。
17.@ConditionOnJndi
组合@Conditional注解,当指定的JNDI存在时才开启配置。
18.@ConditionalOnCloudPlatform
组合@Conditional注解,当指定的云平台激活时才可开启配置。
19.@ConditiomalOnSingleCandidate
组合@Conditional注解,当制定的Class在容器中只有一个Bean,或者同时有多个但为首选时才开启配置。
20.@ConfigurationProperties
用来加载额外的配置(如.properties文件),可用在@Configuration注解类或者@Bean注解方法上面。可看一看Spring Boot读取配置文件的几种方式。
21.@EnableConfigurationProperties
一般要配合@ConfigurationProperties注解使用,用来开启@ConfigurationProperties注解配置Bean的支持。
22.@AntoConfigureAfter
用在自动配置类上面,便是该自动配置类需要在另外指定的自动配置类配置完之后。如Mybatis的自动配置类,需要在数据源自动配置类之后。
23.@AutoConfigureBefore
用在自动配置类上面,便是该自动配置类需要在另外指定的自动配置类配置完之前。
24.@Import
Spring 3.0添加注解,用来导入一个或者多个@Configuration注解修饰的配置类。
25.@IMportReSource
Spring 3.0添加注解,用来导入一个或者多个Spring配置文件,这对Spring Boot兼容老项目非常有用,一位内有些配置文件无法通过java config的形式来配置。
以上就是SpringBoot核心注解有哪些的详细内容,更多请关注其它相关文章!
上一篇: php文件上传错误信息说明
下一篇: 使用PHP简单实现类似“畅言”等评论系统