TYUT-企业级开发教程-第9章

考点不多,不会考大题

异步任务

异步任务通常用于耗时较长或者不需要立即得到执行结果的业务,在 Spring 中,可以使用 @Async 注解实现异步任务,被@Async 注解标注的方法称之为异步方法,异步方法将在执行的时候,会在独立的线程中执行,调用者无须等待它的完成,即可继续其他的操作

 @Async 注解标注的方法可以没有返回值,如果有返回值,则返回值类型必须为 Future 类

 定时任务

基于注解的方式

@EnableScheduling


@EnableScheduling 注解用于开启基于注解方式的定时任务支持,该注解主要用在项目启动类上

@Scheduled 

@Scheduled 注 解 是 Spring 框 架 提 供 的 定 时 任 务 控 制 的 注 解 , 主 要 用 在 定 时 业 务 方 法上 

属性 说明
cron 用于指定任务执行的时间规则,为特殊格式的字符串,可以定制定
时任务触发的秒、分钟、小时、月中的日、月、周中的日
zone 用于指定解析 cron 参数时参照的时区。属性值为 String 类型,默
认值为空字符串,即使用服务器的本地时区
fixedDelay 一个以毫秒为单位的时间间隔,用于指定上一次任务执行结束后再
次执行下一次任务的时间间隔,属性值为 long 类型
ixedDelayString 作用与 fixedDelay 相同,不过属性值为字符串形式的数值
fixedRate 一个以毫秒为单位的时间间隔,用于指定每隔多久执行一次任务,
属性值为 long 类型
fixedRateString 作用与 fixedRate 相同,不过属性值为字符串形式的数值
initialDelay
指定第一次执行之前要延迟的毫秒数,需要指定任务执行的规则
( fixedRate 、 fixedRateString 、 fixedDelay 、 fixedDelayStri
ng ),属性值为 long 类型
initialDelayString 作用与 initialDelay 相同,不过属性值为字符串形式的数值

 cron属性
" 秒 分 小时 日 月 周 "
 

zone 属性

主要与 cron 属性配合使用,用于指定 cron 属性值的时区。通常情况下,不指定 zone 属性,cron 属性值会自动以服务器所在区域作为本地时区进行表达式解析 

 

 

 

两个注解的区别

 

 

 

 Quartz 

Quartz 是基于 Java 语言实现的开源的任务调度库,它可以集成于 J2EE 或 J2SE 应用程序中,也可以单
独使用。 Quartz 可以灵活地实现各种任务的调度,支持任务和调度的多种组合方式,以及支持调度数
据的多种存储方式。
Quartz 采用基于多线程的架构,其内部包含很多重要的组件,下面对这些组件进行说明。
 Job : Job 为希望被调度程序执行的任务,需要设置唯一标识,以便调度的时候进行识别。
 JobDetail : Quartz 并不存储 Job 类的实际实例,而是允许使用 JobDetail 来定义 Job 类的实例。
JobDetai 可以设置关联 Job 的详细信息, JobDetail 实例通过 JobBuilder 类创建。
 Trigger : Trigger 为触发器,用来触发执行 Job ,通过调整触发器的属性设置 Job 执行的条件,
指定任务在什么时候会执行。多个触发器可以指向同一个任务,但单个触发器只能指向一个任务。
 Scheduler : Scheduler 为调度器,调度器会将任务和触发器整合起来,负责基于触发器设定的时
间规则来执行 Job

第9章题目

一、填空题
1.被  @Async   注解标注的方法称之为异步方法。 
2.Spring Boot中处理有返回值的异步方法中,返回值的类型需为 Future    类型。 
3.  @Scheduled   注解是Spring框架提供的定时任务控制的注解。 
4.JavaMailSenderImpl对象的   send()  方法用于执行邮件发送。 
5.发送模板邮件时,需要使用模板引擎解析器的process()方法对模板文件进行 解析     。 

二、判断题
1.异步方法将在执行的时候,将会在独立的线程中被执行。( 对) 
2.fixedDelay和fixedDelayString属性的下一次执行时间是在上一次任务执行完成后开始计时。 ( 对) fixed是从上一次执行开始就计时
3.使用@Scheduled注解的fixedRate属性时可能会引起线程的阻塞。 (对 ) 
4.@Scheduled注解fixedDelayString属性作用和fixedDelay属性相同,不过属性值为字符串形式的数值。 (对 ) 
5.发送模板邮件时,MimeMessageHelper执行setText()方法设置的文本内容为解析前的模板页面的内容。 ( 对) 

三、选择题
1.下列选项中,用于开启基于注解的异步任务支持的注解是(B)。 
A.@Async  B.@EnableAsync  C.@Controller  D.@EnableWebMvc
2.下列选项中,关于@EnableScheduling注解的作用描述正确的是(B)。 
A.标注执行异步任务方法的注解。
B.用于开启基于注解方式的定时任务支持。
C.开启基于注解的异步任务支持。
D.用于定时任务控制的注解。
3.下列选项中,对@Scheduled(fixedDelay = 5000)的作用描述正确的是(A)。 
A.在程序启动后,会立即执行一次定时任务,然后在任务执行结束后,每隔5000毫秒重复执行一次任务。
B.在程序启动后,每隔5000毫秒重复执行一次任务。
C.程序启动后,延迟5000毫秒执行第一次任务。
D.在任务执行结束后,等待5000毫秒后再次执行一次任务,但只触发一次定时任务。
4. 下列选项中,Quartz中调度程序执行的任务组件是(A)。
A.Job  B.JobDetai  C.Trigger  D.Scheduler
5.下列选项中,对MimeMessageHelper的addInline()()方法描述正确的是(A)。 
A.添加邮件静态资源。
B.添加邮件附件。
C.设置邮件正文内容。
D.设置邮件发件人地址。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值