Springboot的异步、邮件任务、定时任务处理

目录

异步需求

同步任务 =》异步任务

邮件任务

定时邮件发送


 

异步需求

 

发送一封邮件时后台通过多线程进行异步处理,不影响用户对前台页面的操作。发送一封凌晨的定时邮件,用户大可不必陪在程序身旁监督是否发送成功。这些都是异步操作带来的好处。我们可以在Springboot中通过注解实现异步操作。

 

 

同步任务 =》异步任务

 

 

同步任务我们需要先新建一个spirngboot项目,导入web启动器。

现在我们通过hello请求访问hello页面

执行业务时让程序睡上三秒

启动web项目,浏览器会转3秒,然后再显示hello页面,控制台会在hello页面显示时打印“数据正在处理”

页面在执行sleep的3秒种你无法再对页面进行其他操作,只能尬等

 

异步任务很简单,只需要在2个地方加注解即可

首先,service中执行的具体方法上加上异步注解

然后在启动类上加入“开启异步的注解”

重启项目后发现,执行sleep的线程不会影响到主线程,用户可以随时对页面进行其他操作

邮件任务

 

导入mail启动器

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

 邮件测试前需要确认你的邮箱开启了各种邮件协议服务

获取授权码,然后把以下信息写到你的applicaiton.properties文件中

发件人邮箱,发件人授权码,发件人的邮件服务器类型,如果是qq邮箱必须开启安全认证服务

然后打开测试类,邮件内容需要写上主体,内容,发件人,收件人

启动测试类,即可收到邮件

======================================================================================

我们再发送一个复杂的邮件

这次文字带了样式,并且附件是一张图片~

 

 

定时邮件发送

 

在springboot启动类里开启定时功能的注解

然后你新建一个service,开启Schedule注解,输入计划任务的参数

它这个执行时间是你电脑的时间,下面我测试一下,到点了会打印语句。

可以看到,打印成功。注意,没有任何controller调用这个方法,只用一个注解就实现了定时执行的功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值