으으아아아
2. 다음으로 봄에 구성하세요.
import org.apache.log4j.*; public class TaskJob { public static Logger log = Logger .getLogger(TaskJob.class); public void SayHello() { // TODO Auto-generated method stub try { log.info("处理任务开始>........"); // 业务逻辑代码调用 System.out.println("时间[" + new java.util.Date().toLocaleString() + "]----->大家好啊!"); log.info("处理任务结束!"); } catch (Exception e) { log.error("处理任务出现异常", e); } } }
3. 실행 클래스를 테스트하려면 스프링 구성 파일을 로드하는 동안 예약된 작업이 실행되는 것을 볼 수 있습니다.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean name="taskJob" class="util.TaskJob" /> <bean id="methodInvokingJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref bean="taskJob" /> </property> <property name="targetMethod"> <value>SayHello</value> </property> </bean> <!-- 配置触发器 --> <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> <!-- 这里不可以直接在属性jobDetail中引用taskJob,因为他要求的是一个jobDetail类型的对象,所以我们得通过MethodInvokingJobDetailFactoryBean来转一下 --> <property name="jobDetail"> <ref bean="methodInvokingJobDetail" /> </property> <!-- 每天的8点到21点每隔1分钟触发,具体说明见附录 --> <property name="cronExpression"> <value>0 * 08-21 * * ?</value> </property> </bean> <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <!-- 添加触发器 --> <property name="triggers"> <list> <ref local="cronTrigger" /> </list> </property> </bean> </beans>
웹 프로젝트에서 실행하려면 웹에도 다음 코드를 추가해야 합니다. 문자
초 0-59, - * /분 0-59, - * /
시간 0~23, - * /
날짜 1~31, - * ? / L W C
월 1~12 또는 JAN~DEC, - * /
주 1~7 또는 일요일 -SAT, - * ? / L C #
연도(선택) 비워두기, 1970-2099, - * /
표현 의미
"0 0 12 * * ?" 매일 정오 12시에 트리거됨
"0 15 10 ? * *" 매일 오전 10시 15분에 트리거됨
"0 15 10 * * ?" 매일 아침 10시 15분에 트리거됨
"0 15 10 * * ? *" 매일 트리거됨 오전 10시 15분
"0 15 10 * * ? 2005" 2005년 매일 오전 10시 15분에 트리거됨
"0 * 14 * * ?" 매일 오후 2시부터 오후 2시 59분까지 1분마다 트리거됨
"0 0/5 14 * * ?" 매일 오후 2시부터 오후 2시 55분까지 5분마다 트리거
"0 0/5 14,18 * * ?" 그리고 오후 6시부터 오후 6시 55분까지 5분마다
"0 0-5 14 * * ?" " 매일 오후 2시부터 오후 2시 55분까지 1분마다 트리거됩니다.
"0 10,44 14 3 WED" 트리거 3월 매주 수요일 오후 2시 10분과 오후 2시 44분
"0 15 10 ? * MON-FRI"는 월요일부터 금요일까지 오전 10시 15분에 트리거됩니다.
"0 15 10 15 * ?" 매월 15일 오전 15시
"0 15 10 L * ?" 매월 말일 오전 10시 15분에 트리거
"0 15 10 ? * 6L" 오전 10시 15분에 트리거 매월 마지막 금요일
"0 15 10 ? * 6L 2002-2005" 2002 ~ 2005 매월 마지막 금요일 오전 10시 15분에 트리거
"0 15 10 ? * 6 #3" 매월 셋째주 금요일 오전 10시 15분에 발생
자바에서 더 많은 스프링 타이밍 작업 구현 코드 관련 글은 PHP 중국어 홈페이지를 주목해주세요!