ใช้ฤดูใบไม้ผลิเพื่อรวมควอตซ์เพื่อใช้งานตัวจับเวลา (โครงการ Maven สำหรับการสาธิต)
วิธีการที่ไม่ได้ขึ้นอยู่กับคลาสฐานเฉพาะ
1. สภาพแวดล้อมการพัฒนาและแพ็คเกจการพึ่งพา
ฤดูใบไม้ผลิ 4.2.6 รีลีส
Maven 3.3.9
JDK 1.7
แนวคิด 15.04
2. การพึ่งพา JAR ที่ขาดไม่ได้ (เพิ่มในไฟล์ pom.xml ในโครงการ Maven)
<การพึ่งพา> <roupID> org.springframework </groupId> <ratifactid> Spring-Context-Support </artifactid> <persion> 4.2.6.release </version> </predency> </dermentency>
3. ไฟล์ที่ใช้เมื่อใช้ตัวจับเวลา:
planworkexcute.java - คลาสที่ดำเนินการโดยตัวจับเวลา
Spring-plan.xml --xml สำหรับการกำหนดค่าข้อมูลตัวจับเวลา
ประการที่สี่ใช้ขั้นตอนการจับเวลา:
1. สร้างไฟล์ planworkexcute.java ภายใต้แพ็คเกจ cc.royao.plantask
แพ็คเกจ cc.royao.plantask; นำเข้า java.text.simpledateformat; นำเข้า java.util.date; นำเข้า java.util.hashmap นำเข้า java.util.list; นำเข้า java.util.map; นำเข้า Java.util.concurrentervice; org.apache.log4j.logger; // คุณสามารถลบการนำเข้า org.springframework.beans.factory.annotation.autowired; คลาสสาธารณะ planworkexecute {logger logger = logger.getLogger Delrawnoaudittask () {SimpledateFormat outformat = new SimpledateFormat ("yyyyy mm เดือน ddd วันที่ hh: mm: ss"); System.out.println ("เริ่มงานการยกเว้นการถอนเงิน ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ logger.info ("เริ่มการถอนและยกเว้นจากการตรวจสอบ งาน---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -2. สร้างไฟล์การกำหนดค่า Spring-plan.xml หมายเหตุ: เพียงสร้างไฟล์กำหนดค่าตัวจับเวลา หากจำเป็นต้องใช้ตัวจับเวลาหลายตัวเพียงเพิ่มถั่วใน Spring-plan.xml และกำหนดวิธีการจับเวลาคลาส ไม่จำเป็นต้องสร้าง XML หลายตัว
・ สำหรับการแสดงออกของ cron ว่าเวลาจะถูกดำเนินการนานเท่าใดโปรดดูที่: http://www.vevb.com/article/138900.htm
・ URL สำหรับการสร้างนิพจน์ออนไลน์: http://cron.qqe2.com/
<? xml version = "1.0" encoding = "utf-8"?> <ถั่ว xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http:/ http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"default-lazy-init="false"><bean id = "Job1"/> <! <ref bean = "job1"/> </property> <property name = "targetMethod"> <dange> ถอนตัวออกไป </value> <!-ชื่อวิธีของคลาสจับเวลา-> </คุณสมบัติ> </ebean> <bean id = "crontrigger_1"> <property name = "jobDetail" <property name = "cronexpression"> <value> 0/2 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ดำเนินการที่ 0:10 ทุกวัน-> </คุณสมบัติ> </ebean> <Bean> <property name = "Triggers"> <list> <ref local = "crontrigger_1"/> <!
3. คุณต้องแนะนำ Spring-plan.xml ใน ApplicationContext.xml รหัสต่อไปนี้มุ่งเน้นไปที่บรรทัดล่าง
<? xml version = "1.0" การเข้ารหัส = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://ww.w3.org/2001/xml xmlns: jee = "http://www.springframework.org/schema/jee" xmlns: tx = "http://www.springframework.org/schema/tx" xmlns: บริบท = "http:/ xmlns: aop = "http://www.springframework.org/schema/aop" xmlns: mvc = "http://www.springframework.org/schema/mvc" xmlns: cache = "http://www.springframework.org/schema/cache" xsi: schemalocation = "http://www.springframework.org/schema/beans http://www.springframeworkwork http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd http://www.springframework http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/aop http://ww.springframework http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/schema http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.2.xsd "คุณสมบัติ default-lazy-init =" true "> <! <slist> <value> web-inf/jdbc.properties </value> <!-<value> web-inf/sms.properties </value>-> </list> </property> </ebean> <bean id = "DataSource"> <property name = "DriverClassName" name = "defaultautocommit" value = "false"/>-> <property name = "url"> <value> jdbc: mysql: //192.168.14.239: 3306/ทดสอบ? useunicode = true & rigentyencoding = utf-8 </value> </ </perty> <property name = "Password"> <value> $ {jdbc.password} </value> </คุณสมบัติ> <property name = "Maxactive"> <dange> 20 </alues> </porement> <property name = "Maxidle"> <value> 60 </value> name = "removeAbandOned"> <value> true </value> </คุณสมบัติ> <property name = "RemoveAbandOnedTimeOut"> <dange> 60000000 </alue> <!-180-> </คุณสมบัติ> <! value = "true"> </property> <property name = "testOnBorrow" value = "true"> </property> <property name = "timebetweenevictionRunsmillis" value = "3600000"> </คุณสมบัติ> <property name = "NumTestSpereVictionRun </ebean> <!-SQLSessionFactory-> <bean id = "SQLSessionFactory"> <property name = "DataSource" ref = "DataSource"/> </ebean> <Bean ID = "ThreadPoolTaskexecutor" name = "keepaliveseconds" value = "300"/> <property name = "queuecapacity" value = "50"/> <property name = "waitfortaskStocompleteOnshutdown" value = "true"/> </ebean> <bean id = "transactionManager"> <!-<!-<!-<บริบท: Component-Scan base-package = "com.royao">-> <!-<บริบท: รวมตัวกรองประเภท = "regex"-> <!-expression = "com.royao.services.*" />-> <! id = "การให้บริการ" นิพจน์ = "การดำเนินการ (*cc.royao.mana.auth.service.*. Impl.*ServiceImpl.*(.. ))"/> <aop: ที่ปรึกษา pointcut-ref = "การให้บริการ" คำแนะนำ-ref = "txadvice"/> Transaction-manager = "TransactionManager"> <tx: แอตทริบิวต์> <tx: method name = "*" Rollback-for = "Exception"/> </tx: attributes> </tx: คำแนะนำ> <tx: คำแนะนำ id = "transactionManagerAdivice" transaction-manager = "TransactionManager" <tx: method name = "*เพิ่ม*" การแพร่กระจาย = "ต้องการ"/> <tx: method name = "*update*" การแพร่กระจาย = "จำเป็น"/> <tx: method name = "*update*" การแพร่กระจาย = "จำเป็น"/> <tx: method = "*del* name = "batchdelfm" propagation = "ต้องการ"/> <tx: method name = "edittemplate" การแพร่กระจาย = "ต้องการ"/> <tx: method name = "dummydelete" การแพร่กระจาย = "จำเป็น"/> <tx: method = "batchdeluser" </tx: แอตทริบิวต์> </tx: คำแนะนำ> <bean> <property name = "basepackage"> <value> cc.royao.mana.auth.mapper.*</value> </คุณสมบัติ> <property name = "SQLSessionFactoryBeanName" value = "SQLSession ที่นี่ฉันคัดลอกเนื้อหาไฟล์ XML ทั้งหมดกลัวว่าคุณไม่รู้ว่าจะแทรกได้ที่ไหน-> <import Resource = "Spring-plan.xml"/> </ebeans>สรุป
ข้างต้นคือสิ่งที่ตัวแก้ไขแนะนำให้คุณโดยใช้สปริงรวมควอตซ์เพื่อใช้ฟังก์ชันตัวจับเวลา ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับทุกคนในเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!