Существует два основных типа временных задач, обычно используемых весной
1. Spring интегрирует кварцевую работу
2. Задача, которая поставляется с Spring 3.0 после
1. Два способа выполнения задач по времени
Кварцевая работа
1. Сначала напишите класс заданий
пакет com.yjf.job; import org.slf4j.logger; import org.slf4j.loggerfactory;/** * @author yjf */public class examplejob {private static final logger = loggerfactory.getlogger (examplejob.class); public void run () {logger.info ("examplejob runs"); }}2. Добавить пружинную интегрированную конфигурацию кварца
<!--Integrated quartz job--> <!-- Defining the task--> <bean id="exampleJob"/> <!-- Method for specifying the bean--> <bean id="exampleJobMethod"> <property name="targetObject" ref="exampleJob"/> <property name="targetMethod" value="run"/> <property name="concurrent" value="true"/> </bean> <!-- There Два типа триггеров для кварца-> <!-Первый SimpliggerFactoryBean поддерживает только задачи вызова на определенной частоте, например, каждые 10 секунд-> <!-<bean id = "simpligger">-> <!-<name = "jobdetail" ref = "examplejobmethod"/>-> <! name = "repeatInterval" value = "10"/>-> <!-</bean>-> <!-Второй CrontriggerFactoryBean может быть выполнен по специальному способу, используя выражение CroNexPression-> <Bean Id = "exampletrigger"> <name = "jobdetail" ref = "Пример Jobmethod"/> <name = "cronexpression"? </bean> <!-Настройте фабрику планирования-> <bean> <name = "triggers"> <list> <ref bean = "exampletrigger"/> </list> </property> </bean>
Весенняя задача
1. Написать категории задач
package com.yjf.job;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;/** * @author yjf44568 */@Componentpublic class SearchUserJob{ private Logger logger = loggerFactory.getLogger (this.getClass ()); @Scheduled (cron = " */5 * * *?") Public void doit () {logger.info ("Я делаю"); }}2. Добавить файл конфигурации задачи
<!-Настройка с аннотацией-> <!-Включите задачи временного времени задачи-> <Задача: управляемый аннотациями/> <!-Сканируйте местоположение пакета, где находится задание-> <Контекст: компонент-сканирование base-package = "com.yjf.job"/>
2. Сравните преимущества и недостатки двух
Кварцевые функции работы
1. Мощная функция, но слегка громоздкая конфигурация
2. Кварц создает новый объект задачи каждый раз, когда он выполняется
3. Исключение бросается во время задачи выполнения кварца, которая не влияет на выполнение следующей задачи. Когда наступит следующее время выполнения, таймер снова выполнит задачу.
Весенние функции задачи
1. Используйте аннотацию @SchedulAuled и небольшое количество конфигураций для ее реализации, простые в использовании
2. Задача использует один и тот же объект задачи каждый раз, когда он выполняется
3. Как только исключение Timertask будет выброшено во время исполнения, весь жизненный цикл таймера заканчивается, и задача таймера никогда не будет выполнена снова в будущем.
В настоящее время я лично использую кварцевую работу больше
Приведенная выше статья «Метод реализации Spring по интеграции задания и весенней задачи кварца» - это весь контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.