问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

springboot怎么满足一个条件时执行一个方法

发布网友 发布时间:2022-03-25 00:42

我来回答

1个回答

热心网友 时间:2022-03-25 02:11

通过注解实现,常用来实现满足条件执行的有@ConditionalOnXXX注解,比如:@ConditionalOnBean,@ConditionalOnMissingBean等等。


这类条件注解可以使用在方法上,也可以使用在类上,用在类上时,通常是@EnableXXX类型的注解,本质上没有发生变化。用在方法上时,表示满足条件就执行该方法;用在类上时,表示满足条件就加载某个类,在我们自定义配置时时使用得比较多。


Spring Boot中常用的条件注解有:

(1)@ConditionalOnBean,表示:存在某个bean

(2)@ConditionalOnMissingBean,表示:不存在某个bean

(3)@ConditionalOnClass,表示:存在某个类

(4)@ConditionalOnMissingClass,表示:不存在某个类

(5)@ConditionalOnProperty,表示:存在某个属性

(6)@ConditionalOnResource,表示:存在某个资源

(7)@ConditionalOnCloudPlatform,表示:cloud环境

(8)@ConditionalOnWebApplication,表示:web运用环境。


接下来使用@ConditionalOnWebApplication注解举例,代码如下图,表示如果是web环境,就注入自定义的视图解析器

条件注入视图解析器


这里不一一做介绍,仅仅列举了常用的8个,其他条件注解和详细的用法,可以参考官方文档

Spring Boot条件注解文档

springboot怎么满足一个条件时执行一个方法

通过注解实现,常用来实现满足条件执行的有@ConditionalOnXXX注解,比如:@ConditionalOnBean,@ConditionalOnMissingBean等等。这类条件注解可以使用在方法上,也可以使用在类上,用在类上时,通常是@EnableXXX类型的注解,本质上没有发生变化。用在方法上时,表示满足条件就执行该方法;用在类上时,表示满足...

想springboot启动完成后执行某个方法

实现方法有2个。一、ApplicationRunner 实现ApplicationRunner接口 打上 @Component + implements ApplicationRunner 二、CommandLineRunner 实现CommandLineRunner接口 打上 @Component + implements CommandLineRunner SpringApplication的run方法会执行afterRefresh方法 afterRefresh会触发callRunners方法 callRunners方法会调用...

SpringBoot启动后执行某个方法

在项目中,SpringBoot启动后,需要初始化一些业务,要在服务启动后自动执行,不用人去手动操作,即把一些业务放到某方法中,服务启动后可自动执行。总结了3种方法:用起来和第一种差不多 PostConstruct是Java提供的注解:@PostConstruct该注解被用来修饰一个非静态的void()方法。被@PostConstruct修饰的方法...

springboot启动运行特定代码

在Spring Boot中,我们可以通过使用ApplicationRunner或者CommandLineRunner接口来实现在Spring Boot启动时运行特定代码。一、背景与需求说明 在Spring Boot应用中,有时我们需要在应用启动时运行一些特定的代码,比如进行数据初始化、预加载缓存等操作。为了满足这种需求,Spring Boot提供了两个接口:ApplicationRunner...

springboot启动完成后执行?

org.springframework.boot.CommandLineRunner是SpringBoot提供的一个接口,当你实现该接口并将之注入SpringIoC容器后,SpringBoot应用启动后就会执行其run方法。一个SpringBoot可以存在多个CommandLineRunner的实现,当存在多个时,你可以实现Ordered接口控制这些实现的执行顺序(Order数值越大优先级越低)。接下来...

springboot中怎么实现定时任务

1. 创建任务类:创建一个Java类,用于定义定时任务的逻辑。在该类中定义一个或多个使用`@Scheduled`注解的方法,这些方法的执行时间和策略通过该注解来配置。例如:`@Scheduled`表示每5秒执行一次。2. 配置开启定时任务:在Spring Boot的主配置类或者专门的配置类中,通过注解`@EnableScheduling`开启定时...

springboot启动前执行方法的几种方式

第一个没有实现BeanPostProcessor接口 第二个实现了BeanPostProcessor接口,但是没有重写他的方法 打印结果如下 可以看到同样是使用了@PostConstruct注解,但是他们的执行顺序却截然不同 BeanPostProcessor为每一个spring维护的对象调用前后做操作,实现了它我们当前类就会变成一个BeanPostProcessor对象,就可以...

springboot条件装配(springboot条件注入)

解决办法一:将@Import改成@ConponentScan这样就会扫描同级包和子包。生成功能类的原则是自定义优先,没有自定义时才会使用自动装配类。springboot启动会加载大量的自动配置类:(在下面的spring.factories文件中)通过@ConditionalOnXXX判断我们是否导入了相关的功能(就是pom文件中的starter),如果导入了,...

SpringBoot几种定时任务的实现方式

1. 使用Timer:这个方式在项目中使用较少,以下是demo代码,具体介绍可以查看api。2. 使用ScheduledExecutorService:该方法与Timer类似,以下是demo。3. 使用Spring Task实现简单定时任务:在SpringBoot项目中,我们可以使用注解优雅地实现定时任务。首先创建项目并导入依赖。4. 创建任务类:在主类上使用@...

springboot启动前执行方法的几种方式

提供大量优秀的Web框架方便开发等等。在了解SpringBoot的启动流程的时候,我们先看一下一个SpringBoot应用是如何启动的,如下是一个简单的SpringBoot程序,非常的简洁,他是如何做到的呢,我们接下来就将一步步分解。执行核心run方法初始化initialize方法执行完之后,会调用run方法,开始启动SpringBoot。

springboot文件上传 springboot配置文件 springboot2 springboot中文手册 springboot版本 springboot原理 基于springboot的项目 spring boot常用注解 spring boot注解详解
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求游戏《寂静岭》中好听的游戏配乐,最好是纯音乐 A8 6500 最高支持什么显卡 加条内存组成双通道 对游戏有多大提升... ...追了四个多月了、她也喜欢我。我们俩个在一起也上了床…但是我是... 和喜欢7年的女孩表白后女生说给她点时间,但是又没说什么时间回复我。她... 说一个人很有气质`是什么样的呢` 邢台周边地区的苹果是什么价格 太行百果园地址在哪里? ...时最后香的形状是两边低中间高,这代表什么意思呀?麻烦知..._百度知... 染色体的组成为( )A.DNA和蛋白质B.蛋白质和糖类C.基因和蛋白质D.基 ... 监控器被接入后黑屏的原因 SpringBoot有几种读取配置的方式? 在springboot实体类的注解有哪些 SpringBoot如何注解事务声明式事务 spring有哪些常用注解 spring的常用注解是什么? springboot三大核心注解是什么? 14.SpringBoot的核心注解都有哪些? springboot核心注解是什么? SpringBoot的核心注解都有哪些? 小米3能否安装日文系统语言包? 小米系统文字 小米3如何设置语言为日本语? 如何吧手机系统修改成日语。我的没有日本语。我的有root。是要ROM大师还是自制刷机包还是要怎样 小米3怎么快速的切换日语输入法?MIUIV6系统 怎么把小米5 语言设置成日语 你好,请问小米3怎样把系统语言换成日语? 小米手机怎么才能更改日语系统。 为什么不开发啊~🙄 小米手机怎么添加日文? 怎样把MIUI改成日文的 小米手机怎样用软件修改系统语言,日语 springboot 什么注解可以返回字符串 springboot菜鸟教程 springboot 怎么用@scheduled注解 spring boot 什么注解可以让返回的json数据都为字符串 请教一个spring boot @Value注解问题 Spring boot @Service 和@Configuration 的区别? springBoot @RequestBody 写在方法上与写在参数上的区别? Spring Boot+Elasticsearch的集成中,@Document注解有什么作用? 手机充电时间过长对电池有影响吗 手机电池连续充电长达24小时以上,会对电池的使用和寿命有影响吗? 充电的时间太长对手机有什么危害 手机电池充电时间长了,会有什么影响? 手机充电很长时间对电池有损坏吗? 手机充电一晚上大概十小时对电池会不会有不好的影响 手机长时间充电对电池有影响吗 手机充电充了12小时忘记拔了,对电池有影响吗? 苹果手机充电时间过长对电池有影响吗 手机电池充电时间过长会损坏吗? 手机电池充电时间过长,会影响电池的使用寿命吗? 手机电池充电时间长,对手机有害吗?