A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 谷粒姐姐 于 2018-3-23 10:57 编辑

三、 宣传活动自动过期处理功能  
当时宣传活动,到达结束时间后,希望系统能够自动修改 Promotion 数据表的 status 字段, 将值设置为 2 ,表示活动已经结束  
1 Quartz 任务调度框架的使用   图片46.png

         Quartz 就是启动定时任务的框架 !!  
图片47.png
图片48.png
2 Quartz 快速入门  
建立 maven 项目  导入 quartz 坐标  
图片49.png
案例一:
图片50.png
案例二: SimpleTrigger 使用  
  必须掌握 JobDetail 和 Trigger 两个对象   
         Job 工作任务 ,你要做什么  
         Trigger 执行工作任务 触发条件 , 什么时间执行, 多久执行一次  编写工作任务  
图片51.png
编写定时任务代码  
图片52.png
对象 TriggerBuilder 启动任务时间          startNow 立即启动          startAt (Date) 指定时间启动对象 SimpleScheduleBuilder 进行简单任务重复执行           repeatSecondly …() 多少秒后重复执行           repeatminutely …() 多少分钟后重复执行 repeatHourly …() 多少小时后重复执行
案例三: CronTrigger 的使用  
图片53.png
例如: 每周二 中午 12 点执行任务 、 每月 1 日执行任务  
图片54.png
         0 0 12 ? * 3  每周二中午 12 点执行任务
         0 0 0 0 * ?  每月 1 日 0 点执行任务  
图片55.png
         day-of-month 和 day-of-week 只能设置一个值,另一个值写 ?
3 Quartz Spring 集成使用
Spring 提供 JobDetailFactoryBean
图片56.png   
Spring 提供 TriggerFactoryBean
图片57.png
Spring 提供 SchedulerFactoryBean
图片58.png
1、 建立 war 包 maven 项目 quartz_spring ,导入 maven 依赖  
图片59.png
图片60.png
2、 配置 web.xml spring 的监听器
图片61.png
3、 编写 Job 程序  
图片62.png
4、 配置 spring 的 applicationContext.xml  
图片63.png
4 Quartz Spring 集成后 Bean 注入的问题解决
1、 定义了一个被 spring 管理的 Bean
图片64.png   
配置 applicationContext.xml  
图片65.png
2、 在 Job 中注入 spring 管理的 Bean  
图片66.png
问题: 在 Job 中 spring 管理的 Bean 无法注入  解决: 需要在 Scheduler 中自定义 JobFactory   
图片67.png
配置 applicationContext.xml
图片68.png   
5 宣传活动自动过期功能  
分析: 修改 promotion 数据表的 status 字段,在 bos_management 中使用 ,在 bos_management 集成 quartz  
1、在 common_parent 引入定时框架
图片69.png   
1、 在 bos_management 编写 Job 和 JobFactory  
图片70.png
编写 Job
图片71.png
编写 Service
图片72.png
编写 Repository
图片73.png
3、 配置 applicationContext.xml  
图片74.png

bos项目笔记之chapter06_系统分析、环境搭建(2

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马