중국시가넷 - 메시지 플랫폼 - 자바를 사용하여 SMS 자동 전송 기능을 구현하는 방법
자바를 사용하여 SMS 자동 전송 기능을 구현하는 방법
1.web.xml 에서 리스너를 구성합니다
& lt 청중>
& lt 리스너 클래스>
Cn.com.jxlife.shs.web.action.csinquiry.submission.mylistener
& lt/listener-class >
& lt/listener & gt;;
리스너를 생성합니다
Java.util.timer 가져오기
Javax.servlet.servletcontextevent 가져오기
Javax.servlet.servletcontextlistener 가져오기
공용 클래스 MyListener 구현 ServletContextListener {
개인 타이머 timer = null
@ 덮어쓰기
Public void context initialized (servletcontextevent SCE) {
Timer = 새 타이머 (true);
//작업 스케줄, 시작 및 간격 시간을 설정합니다.
Timer.schedule(new MyTask (), 0,3 * 60 *1000);
//3 분
//timer.schedule(new MyTask (), 0,3 * 60 *1000);
// 1 초 후에 이 작업을 한 번에 2 초 간격으로 실행합니다.
//timer.schedule(new MyTask (),1000,2000);
}
@ 덮어쓰기
Public void context destroyed (servletcontextevent SCE) {
Timer.cancel ();
}
}
3. 시작된 클래스 MyTask 를 생성합니다.
Java.util.date 가져오기
Java.util.timertask 가져오기
공용 클래스 MyTask 는 TimerTask {
@ 덮어쓰기
공용 잘못된 실행 () {
System.out.println ("call at"+(new date ());
}
}
방법 2:
Quartz, spring 에서 일반적인 작업을 위한 일정 프레임워크.
1. 부터. Macho me. quartz;
공용 클래스 CustomJob 1 {
Public void onTimeWork() {
System.out.println ("데이터 백업 작업 시작");
System.out.println ("...");
System.out.println ("데이터 백업 작업 완료");
}
}
4. 나머지 작업은 spring XML 파일에서 수행됩니다.
& lt! -계획된 bean->;
& lt beanid = "job1"class = "com.macho me.quartz.custom job1"> &
& lt! -작업 개체 정의->
& ltbean id="jobtask 1 "
Class = "org.springframework.scheduling.quartz.methodinvokingjobdetailfactorybean" >
& lt! -계획된 bean->;
& ltproperty name="targetObject ">
& lt ref bean = "작업1"/>
& lt/property & gt;;
& lt! -스케줄링 bean 의 스케줄링 방법->;
& ltproperty name="targetMethod ">
& lt 값 & gtonTimeWork & lt/value & gt;;
& lt/property & gt;;
& lt/bean & gt;;
& lt! -트리거 개체 정의->
& ltbean id="trigger 1 "
Class = "org.springframework.scheduling.quartz.crontriggerbean" >
& lt! -임무 대상->
& ltproperty name="jobDetail ">
& ltref bean="jobtask 1"/>
& lt/property & gt;;
& lt! -cron 표현식->
& lt propertyname = "cronexpression" >
& lt 값>10,15,20,25,30,35,40,45,50,55 * * * * & lt/value & gt;;
& lt/property & gt;;
& lt/bean & gt;;
& lt! -계획 대상->
& lt! -lazy-init='false' 인 경우 스케줄러는 컨테이너가 시작될 때-> 를 실행합니다
& lt beanid = "scheduler" lazy-init = "false"
Class = "org.springframework.scheduling.quartz.schedulerfactorybean" >
& lt! -트리거 개체->
& ltproperty name = "triggers">
& lt 목록>
& ltref bean="trigger 1"/>
& lt/list & gt;;
& lt/property & gt;;
& lt/bean & gt;;
5. Spring 프로젝트를 TOMCAT 또는 JBOSS 서버에 배포합니다.
프로젝트를 배포합니다
TOMCAT 서버를 다시 시작합니다
6. 결과를 보세요.
Cron 표현식 참조: Quartz 의 cron 표현식