Spring Boot注解-Java-E先生的博客
Java
MySQL
大数据
Python
前端
黑科技
大语言模型
    首页 >> 互联网 >> Java

Spring Boot注解

[导读]:Spring Boot注解...

   SpringBootApplication

   SpringBootApplication注解是一个快捷的配置注解,在被它标注的类中,可以定义一个或多个Bean,并自动触发自动配置Bean和自动扫描组件。此注解相当于 Configuration、 EnableAutoConfiguration和 ComponentScan的组合。

  在Spring Boot应用程序的主类中,就使用了此注解。示例代码如下:

@SpringBootApplication

public class Application{

    public static void main(String [] args){

        SpringApplication.run(Application.class,args);

    }

}

   EnableAutoConfiguration

   EnableAutoConfiguration注解用于通知Spring,根据当前类路径下引入的依赖包,自动配置与这些依赖包相关的配置项。

   ConditionalOnClass与 ConditionalOnMissingClass

  这两个注解属于类条件注解,它们根据是否存在某个类作为判断依据来决定是否要执行某些配置。下面是一个简单的示例代码:

@Configuration

@ConditionalOnClass(DataSource.class)

class MySQLAutoConfiguration {

    //...

}

   ConditionalOnBean与 ConditionalOnMissingBean

  这两个注解属于对象条件注解,根据是否存在某个对象作为依据来决定是否要执行某些配置方法。示例代码如下:

@Bean

@ConditionalOnBean(name="dataSource")

LocalContainerEntityManagerFactoryBean entityManagerFactory(){

        //...

        }

@Bean

@ConditionalOnMissingBean

public MyBean myBean(){

        //...

        }

   ConditionalOnProperty

   ConditionalOnProperty注解会根据Spring配置文件中的配置项是否满足配置要求,从而决定是否要执行被其标注的方法。示例代码如下:

@Bean

@ConditionalOnProperty(name="alipay",havingValue="on")

Alipay alipay(){

        return new Alipay();

        }

   ConditionalOnResource

  此注解用于检测当某个配置文件存在使,则触发被其标注的方法,下面是使用此注解的代码示例:

@ConditionalOnResource(resources = "classpath:website.properties")

Properties addWebsiteProperties(){

        //...

        }

   ConditionalOnWebApplication与 ConditionalOnNotWebApplication

  这两个注解用于判断当前的应用程序是否是Web应用程序。如果当前应用是Web应用程序,则使用Spring WebApplicationContext,并定义其会话的生命周期。下面是一个简单的示例:

@ConditionalOnWebApplication

HealthCheckController healthCheckController(){

        //...

        }

   ConditionalExpression

  此注解可以让我们控制更细粒度的基于表达式的配置条件限制。当表达式满足某个条件或者表达式为真的时候,将会执行被此注解标注的方法。

@Bean

@ConditionalException("${localstore} && ${local == 'true'}")

LocalFileStore store(){

        //...

        }

   Conditional

   Conditional注解可以控制更为复杂的配置条件。在Spring内置的条件控制注解不满足应用需求的时候,可以使用此注解定义自定义的控制条件,以达到自定义的要求。下面是使用该注解的简单示例:

@Conditioanl(CustomConditioanl.class)

CustomProperties addCustomProperties(){

        //...

        }

image.png

本文来自E先生的博客,如若转载,请注明出处:https://www.javajz.cn

留言区

联系人:
手   机:
内   容:
验证码:

历史留言

欢迎加Easy的QQ