解决这个问题大概需要做一下工作
1 写一个xml的解释器类,或者用java的XML的解释器,用来解释定时任务xml配置文件
2 写一个任务管理类
在1解释完xml后,实际上就是根据xml的配置来执行定时任务了
题目中的接口,实际上就是模拟Thread类,用来执行任务
管理类就是根据配置来启动和关闭定时任务
第一步:spring-context.xml的schema
第二步:spring-context.xml配置
第三步:task加注解
@fixedDelay 间隔时间是根据上次的任务结束的时候开始计时的。比如一个方法上设置了fixedDelay=5*1000,那么当该方法某一次执行结束后,开始计算时间,当时间达到5秒,就开始再次执行该方法。
@fixedRate 间隔时间是根据上次任务开始的时候计时的。比如当方法上设置了fiexdRate=5*1000,该执行该方法所花的时间是2秒,那么3秒后就会再次执行该方法。
@Lazy指定该Bean是否预初始化。主要用于修饰Spring Bean类,用于指定该Bean的预初始化行为,使用该Annotation时可以指定一个boolean型的value属性,该属性决定是否要预初始化该Bean
lazy=false代表不延时,如果对象A中还有对象B的引用,会在A的xml映射文件中配置b的对象引用,多对一或一对多,不延时代表查询出对象A的时候,会把B对象也查询出来放到A对象的引用中,A对象中的B对象是有值的。
lazy=true代表延时,查询A对象时,不会把B对象也查询出来,只会在用到A对象中B对象时才会去查询,默认是true,一般需要优化效率的时候会用到
步骤如下。1、创建一个spring配置文件:spring-quartz.xml。2、定义工作任务的工作。3、定义触发器并将其绑定到工作。4、定义调动程序,并向调度程序注册触发器。
此 *** 作为java定时器设置。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)