이 기사는 참조를 위해 Jcrontab에 대한 간단한 소개를 공유합니다. 특정 내용은 다음과 같습니다
Javaweb 프로젝트를 만듭니다
1. 먼저 Jcrontab의 관련 JAR 패키지를 다운로드해야합니다. Lib 폴더에 넣으십시오.
2. 새 파일을 SRC에서 다음과 같이 SRC에서 jcrontab.properties 작성하십시오.
#crontab.xml
파일의 디렉토리, 이것은 작업 일정 규칙입니다.
org.jcrontab.data.file = e : /eclipseworkspace/ademo/webcontent/webcontent/web-inf/crontab.xml
#sax 파싱 드라이버 유형
org.xml.sax.driver = org.apache.xerces.parsers.saxparser
#datasource 파일 유형
org.jcrontab.data.datasource = org.jcrontab.data.xmlsource
3. Web-Inf에서 새 파일 Crontab.xml을 만듭니다
<? xml version = "1.0"encoding = "utf-8"?> <crontab> <crontabentry id = "2014"> <cecrs> 0,5,10,15,20,25,30,35,40,45,50,55 </secons> <minds>*</minds> </houls> </homs> <daysofmonth>*</daysofmonth> </months> <daysofwweek>*</years> ays> true </bussinesdays> <startDate> </startDate> <EndDate> </endDate> <class> xu.crontab.crontab1 </class> <methob> run </metho> <parameters> </parameters> <descript> </descript> </crontabentry> </crontab>
Baidu의 위의 속성을 직접 가져 가십시오. <초> 0,5,10,15,20,30,35,40,45,50,55 </secons> 이것은 5의 두 번째 숫자 중 하나이며 작업을 호출합니다.
4. Web.xml 구성은 다음과 같습니다
<? xml version = "1.0"encoding = "utf-8"?> <Web-App xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance"xmlns = "http://xmlns.jcp.org/xml/ns/javaee"xsi : schemalocation = "http://xmlns. http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"ID="WAPPAP_ID "3.1"> <Display-Name> ademo </display-name> <Servlet> <Servlet-name> loadOnStartUpServlet </servlet-name> <Servlet-class> xu.crontab.loadcrontabservlet </servlet-class> <init-param> <param-name> properties_file </param-name> <!-여기 경로는 절대 경로입니다-> param-value> e :/eclipseworkspace/ademo/ademo. src/jcrontab.properties </param-value> </init-param> </init-on-startup> 1 </servle-on-startup> </servlet> <servlet-mapping> <servlet-name> loadonstartupservlet </servlet-name> <url-pattern>/startup </url-pattern> </web-appping>
5. Xu.Crontab 패키지에서 새 Java 파일 2 개 생성 (파일 위치의 최상위 스크린 샷 참조) [다른 Java 파일을 신경 쓰지 마십시오]
loadcrontabservlet.java
패키지 xu.crontab; import java.io.fileInputStream; import java.io.ioexception; import java.io.inputStream; import java.util.enumeration; import java.util.properties; import javax.servlet.servletconfig; import javax.servlet.servletexception; org.jcrontab.crontab; import org.jcrontab.log.log; 공개 클래스로드 Crontabservlet는 httpservlet { /** * /private static final long serialversionuid = 1l; private crontab cron = null; public void init (servletconfig config) servletexception {super.init (config); {system.out.print ( "working? ..."); process (); System.out.println ( "OK");} catch (예외 E) {throw new servleTeXception (e);}} 보호 된 입력 스트림 크리젠 테르 로프 리터 티스트림 (Strows name) IoException {return new fileInputStream (name); "jcrontab.properties"; 문자열 props = getServletConfig (). getInitParameter ( "Properties_File"); if (propss == null) {props = propz;} 속성 propobj = new Properties (); try {inputStream input = createProperTiesstream (props); propobj.load (input);} catch (ioexception ioe.printstacktrace (); c.getinitparameternames (); while (keys.hasmoreElements ()) {String key = (string) keys.nextElement (); propobj.setProperty (key, c.getInitParameter (key));} cron = crontab.getInstance (); try {shutdownhook (); cron.init (propobj);} catch (예외 e) {log.error (e.tostring (), e);}} public void shutdownhook ()} 예외 {runtime.getRuntime (). addShutdownHook (new Thread () {doid run ()}; {dostop ();} public void dostop () {log.info ( "종료 ..."); cron.uninit (100); log.info ( "stoped");}} Crontab1.java
패키지 xu.crontab; import java.util.date; public class crontab1 {public static void run (String [] args) {System.out.println (new date ()+"-----> hello world !!!"); }}Tomcat을 시작한 후에는 작업이 5 초마다 호출되는 것을 알 수 있습니다. 나는 당신이 성공하기를 바랍니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.