この記事では、参照のためにJcrontabの簡単な紹介を共有しています。特定のコンテンツは次のとおりです
Javawebプロジェクトを作成します
1.最初に、JCRONTAB、JCRONTAB-2.0-RC0.JARの関連するJARパッケージをダウンロードする必要があります。 libフォルダーに入れます。
2。次のように、SRCの下に新しいファイルjcrontab.propertiesを作成します。
#crontab.xml
ファイルのディレクトリ、これはジョブスケジューリングルールです
org.jcrontab.data.file = e:/eclipseworkspace/ademo/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"> <seconds> 0,5,10,15,20,25,30,35,40,45,50,55 </seconds> <minutes>*</minutes> <時間>*</hours> <daysofmonth>*</daysofmonth> <months>*</months> <daysofweek> ays> true </bussinesdays> <startdate> </startdate> <enddate> </enddate> <class> xu.crontab.crontab1 </class> <method> run </method> <parameters> </parameters> <説明> </description> </crontabentry> </crontab>
バイドゥの上記の属性を自分で取得してください。 <seconds> 0,5,10,15,20,25,30,35,40,55,55,55 </秒>これは、5の2番目の数の倍数であり、ジョブを呼び出します。
4。Web.xml構成は次のとおりです
<?xmlバージョン= "1.0" encoding = "utf-8"?> <web-app xmlns:xsi = "http://www.w3.org/2001/xmlschema-instance" xmlns = "http://xmlns.j cp.org/xml/ns/javaee"xsi:schemalocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_1.xsd"id="webapp_id "バージョン=" 3.1 " <Servlet> <Servlet-Name> roadOnStartUpServlet </servlet-name> <servlet-class> xu.crontab.loadcrontabservlet </servlet-class> <init-param> <param-name> properties_file </param-name> <! - ここのパスは絶対的なパスです - > <param-value> e:/eclipseworksepace/ademo/ademo/ademo/ademo/ademo/ademo src/jcrontab.properties </param-value> </init-param> <load-on-startup> 1 </load-on-startup> </servlet> <servlet-name> loadonstartupservlet </servet-name> <url-pattern>/url-perthsup>
5. Xu.Crontabパッケージの下に2つの新しいJavaファイルを作成します(ファイルの場所のトップスクリーンショットを参照)[他のJavaファイルを気にしないでください]
loadcrontabservlet.java
パッケージxu.crontab; java.io.fileinputStream; Import java.io.ioexception; Import java.io.inputStream; Import Java.util.Enumeration; Import java.util.properties; Import javax.servletconfig; Import Javax.Servletectection; org.jcrontab.crontab; Import org.jcrontab.log.log; public class loadcrontabservletはhttpservlet { /** * * /private static final long serialversionuid = 1l; private crontab cron = null; public void init(servletconfig config)はservletexception {super.init(config); try {System.out.print( "working?..."); process(); system.out.println( "ok");} catch(Expect e){throw new servletexception(e);};}}保護されたinputstream createpropertiesstream(string name)throws ioexception {return new fileInputStream(name) 「jcrontab.properties」; string props = getServletConfig()。getInitParameter( "Properties_file"); if(props == null){props = propz;}プロパティpropobj = new Properties(); try {inputstream input = createpropertiesstream(props); propobj.load(input);} catch(ioexception(ioexception){ioe.printstacktrace();} servletconfig c = getervletconfig(); 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(exception e){log.error(e.tostring()、e);}} public void shutdownhook()throws {runtime.getruntime()。 {dostop();} public void dostop(){log.info( "shotting down ..."); 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をもっとサポートすることを願っています。