SpringBoot(8)-任务

目录

一、异步任务

二、定时任务

三、邮件任务


一、异步任务

使用场景:后端发送邮件需要时间,前端若响应不动会导致体验感不佳,一般会采用多线程的方式去处理这些任务,但每次都需要自己去手动编写多线程来实现

1、编写service层

给hello方法添加**@Async**注解,告诉Spring这是一个异步的方法,SpringBoot就会自己开一个线程池,进行调用

2、编写controller层

3、主程序添加**@EnableAsync**注解

开启异步注解功能,这样才能使@Async注解生效

4、测试,网页瞬间响应,后台代码依旧执行

二、定时任务

使用场景:每天凌晨,分析一次前一天的日志信息

1、编写service层

若方法需要定时执行,则需加上**@Scheduled注解,结合cron表达式**

2、主程序添加**@EnableScheduling**注解

开启定时功能的注解

三、邮件任务

1、引入依赖

XML 复制代码
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

2、配置文件

SpringBoot自动配置MailSenderAutoConfiguration

这个类中存在bean,JavaMailSenderImpl,其中有mail的配置文件

3、Spring单元测试

相关推荐
葫芦和十三10 小时前
图解 MongoDB 13|WiredTiger 存储引擎:B-tree、页和 checkpoint 三件套
后端·mongodb·agent
葫芦和十三10 小时前
图解 MongoDB 14|Cache 与淘汰:WiredTiger 的内存治理
后端·mongodb·面试
IT_陈寒14 小时前
Vue这个坑我跳了两次,原来问题出在这
前端·人工智能·后端
人活一口气15 小时前
Spring Boot与AIGC的完美结合:从零搭建智能内容生成平台
java·spring boot·aigc
ServBay15 小时前
9 个 Python 第三方库推荐,不用 AI 都好像多出一个团队
后端·python
用户83562907805115 小时前
如何使用 Python 添加和管理 Excel 批注(完整示例)
后端·python
用户83562907805115 小时前
使用 Python 管理 Excel 工作表:创建、复制、删除与重命名
后端·python
lizhongxuan15 小时前
Agent Tool
后端
CaffeinePro15 小时前
依赖注入:FastAPI最核心的解耦能力案例解析
后端·fastapi
Assby16 小时前
从 Function Calling 到 MCP:理解 Agent 工具调用的底层通信机制
人工智能·后端