1. อินเทอร์เฟซทั่วไป:
1. อินเตอร์เฟสงาน: มีเพียงวิธีเดียวสำหรับอินเทอร์เฟซนี้
เป็นโมฆะดำเนินการ (บริบท jobExecutionContext)
นักพัฒนาใช้อินเทอร์เฟซนี้เพื่อกำหนดงานที่ต้องดำเนินการ คลาส JobExecutionContext ให้ข้อมูลต่าง ๆ เกี่ยวกับบริบทการกำหนดเวลา
2. JobDetail: ใช้เพื่ออธิบายคลาสการใช้งานและข้อมูลคงที่อื่น ๆ
3. ทริกเกอร์: อธิบายกฎทริกเกอร์เวลาสำหรับการเรียกใช้งาน
4. ปฏิทิน: กำหนดพื้นที่เวลาที่อาจ (หรือเป็นไปไม่ได้) ทริกเกอร์ร่วมกับทริกเกอร์ มันไม่ได้กำหนดเวลาจริงของทริกเกอร์ แต่ใช้เมื่อกำหนดการปกติจำเป็นต้อง จำกัด ทริกเกอร์ทริกเกอร์ ปฏิทินส่วนใหญ่มีตลอดเวลาเป็นค่าเริ่มต้นและผู้ใช้ไม่รวมเวลา
5. Scheduler: เรียกใช้คอนเทนเนอร์และใช้ SchedulerFactory เพื่อสร้างอินสแตนซ์ Scheduler
2. ตัวอย่างรหัส:
1. เมื่อใช้ควอตซ์คุณต้องใช้อินเตอร์เฟสงาน
Public Class TestJob ใช้งาน {โมฆะสาธารณะดำเนินการ (jobExecutionContext บริบท) พ่น jobExecutionException {system.out.println ("Hello World! -" + วันที่ใหม่ ()); // ทำมากกว่านั้น ... }}2. การกำหนดเวลา [มันค่อนข้างง่ายเพียงแค่ดูรหัส]
ระดับสาธารณะ Quartztest {โมฆะคงที่สาธารณะหลัก (String args []) พ่น schedulerexception, parseexception {JobDetail JobDetail = JobBuilder.newjob (testjob.class) .withidentity ("testjob_1", "group_1") Trigger Trigger = TriggerBuilder .newTrigger () .WithIdentity ("Trigger_1", "Group_1"). StartNow (). withSchedule (simplesCheduleBuilder.SimplesChedule () .สร้าง(); SchedulerFactory SF = ใหม่ stdschedulerfactory (); scheduler schede = sf.getscheduler (); sched.schedulejob (Jobdetail, Trigger); sched.start (); -นี่คือเวอร์ชัน 2.2.1 อ้างถึงตัวอย่างของเอกสารอย่างเป็นทางการ ฉันเห็นว่ามีการใช้หนังสืออ้างอิงบางเล่มในรุ่นเก่าดังนั้นจึงมีความแตกต่างบางอย่าง มีวิธีการมากมายที่เลิกใช้แล้วดังนั้นจึงเป็นเรื่องจริงมากขึ้นในการอ่านเอกสารโดยตรง ที่อยู่เว็บไซต์อย่างเป็นทางการของ Quartz คือ: http://www.quartz-scheduler.org/
iii. ตัวอย่างไฟล์การกำหนดค่า quartz2.2.1
# ไฟล์คุณสมบัติเริ่มต้นสำหรับใช้โดย stdschedulerfactory# เพื่อสร้างอินสแตนซ์ของตารางเวลาควอตซ์หากไฟล์คุณสมบัติ# อื่น ๆ ไม่ได้ระบุไว้อย่างชัดเจน### cluster การกำหนดค่า org.quartz.scheduler.instancename: defaultQuartzschedulorg.quartz.scheduler.rmi.export talseorg.quartz.scheduler.rmi.proxy: talseorg.quartz.scheduler.wrapjobexecutioninusertransaction: false org.quartz.threadpool.class: org.quartz.simpl.simplethreathedpoolorg.quartz.thread.thread.thread 10org.quartz.threadpool.threadpriority: 5org.quartz.threadpool.threadsinheritcontextclasslassloaderofinitializingthread: true org.quartz.jobstore.misfirethreshold: 60000 # =================================================================================== # กำหนดค่า Jobstore #======================================================================================================================== การกำหนดค่า, บันทึกข้อมูลไปยังหน่วยความจำ#org.quartz.jobstore.class: org.quartz.simpl.ramjobstore#การกำหนดค่าถาวร org.quartz.jobstore.class: org.quartz.impl.jdbcjobstore.jobstoretxorg.quartz.jobstore.driverdelegateclass: org.quartz.impl.jdbcjobstore.stdjdbcdelegateorg.quartz.impl. org.quartz.jobstore.tableprefix: qrtz_org.quartz.jobstore.datasource: qzds - - กำหนดค่าแหล่งข้อมูล#========================================================================================================================== org.quartz.datasource.qzds.driver: com.mysql.jdbc.driverg.quartz.datasour ce.qzds.url: jdbc: mysql: // localhost: 3306/quartzdborg.quartz.datasource.qzds.user: rotorg.quartz.datasource.qzds.password: 123456org.quartz.datasource.
4. ฐานข้อมูลที่เกี่ยวข้อง
การคงอยู่ต้องการการสร้างตารางข้อมูลควอตซ์ในฐานข้อมูลที่เกี่ยวข้องล่วงหน้า ในแพ็คเกจรีลีสควอตซ์ DOCS/DBTABLes มีสคริปต์ SQL ที่สอดคล้องกับฐานข้อมูลที่แตกต่างกัน
ตัวอย่างเช่นนี่คือ mysql:
ฟิลด์ตารางข้อมูลคำอธิบาย: