java에서spring 시간 작업 구현 코드
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);
}
}
}
2. 다음 스프링 구성:
<?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>
3. 테스트 실행 클래스,spring 프로필을 불러오면 정시 작업이 실행되는 것을 볼 수 있습니다..
package util;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestApp {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(" spring ....");
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println(" !");
// ApplicationContext context2 = new ClassPathXmlApplicationContext("test/timerTask/quartzTimer.xml");
}
}
웹 프로젝트에서 실행하려면 웹에서도 실행해야 합니다.xml에 다음 코드를 추가합니다.
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
다음은 필드 허용 값이 허용하는 특수 문자 초 0-59, - */분 0-59, - */시간 0-23, - */날짜 1-31, - *?/L W C 월 1-12 또는 JAN-DEC, - */월요일 1-7 또는 SUN-SAT, - *?/L C# 년(옵션) 비어 있음, 1970-2099, - */표현식 의미 "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/5 14*?"매일 오후 2시부터 오후 2시 55분까지 5분마다 "0/5 14, 18 * *?"매일 오후 2시부터 2:55까지, 오후 6시부터 6:55까지 5분마다 "0 0-5 14 * *?"매일 오후 2시부터 오후 2시까지 1분마다'0 10,44 14?3 WED'를 터치합니다. 매년 3월 수요일 오후 2:10과 2:44는'0 15 10?* MON-FRI'를 터치합니다. 월요일부터 금요일까지 오전 10:15는'0 15 10 15 *?'매월 15일 오전 10시 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 트리거
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.