1. واجهات مشتركة:
1. واجهة الوظيفة: هناك طريقة واحدة فقط لهذه الواجهة
تنفيذ باطل (سياق JobexecutionContext)
يقوم المطور بتنفيذ هذه الواجهة لتحديد المهام التي يجب تنفيذها. توفر فئة JobexecutionContext معلومات مختلفة حول سياق الجدولة.
2. Jobdetail: يستخدم لوصف فصول تنفيذ الوظائف وبعض المعلومات الثابتة الأخرى
3. الزناد: صف قواعد الزناد الزمنية لإثارة تنفيذ الوظائف
4. التقويم: يحدد مساحة زمنية قد (أو مستحيل) تدور بالاشتراك مع الزناد. لا يحدد الوقت الحقيقي للتشغيل ، ولكن يتم استخدامه عندما يحتاج الجدول الطبيعي إلى الحد من مشغل الزناد. تحتوي معظم التقويمات طوال الوقت بشكل افتراضي ، ويستبعد المستخدم بعض الوقت.
5. جدولة: قم بتشغيل الحاوية واستخدم SchedulerFactory لإنشاء مثيل جدولة
2. مثال رمز:
1. عند استخدام الكوارتز ، تحتاج إلى تنفيذ واجهة الوظيفة ؛
TestJob public يبرز Job {public void execute (JobexecutionContext Context) يلقي JobexecutionException {system.out.println ("Hello World! -" + New Date ()) ؛ // افعل المزيد ...}}2. جدولة [الأمر بسيط نسبيًا ، انظر فقط إلى الكود]
الطبقة العامة QuartzTest {public static void main (string args []) remswerexception ، parseException {JobDetail JobDetail = Jobbuilder.newjob (testjob.class). Trigger Trigger = TriggerBuilder .NewTrigger () .DithIdentity ("Trigger_1" ، "Group_1") .startnow (). نفذ)) .Build () ؛ SchedulerFactory SF = جديد StdScheDulerFactory () ؛ Scheduler Sched = sf.getScheduler () ؛ Sched.ScheduleJob (JobDetail ، Trigger) ؛ Sched.Start () ؛ }}فيما يلي الإصدار 2.2.1 ، ارجع إلى أمثلة الوثائق الرسمية. رأيت أن بعض الكتب المرجعية تستخدم في الإصدارات القديمة ، لذلك هناك بعض الاختلافات. تم إهمال العديد من الطرق ، لذلك من الأكثر واقعية قراءة المستندات مباشرة. عنوان الموقع الرسمي لكوارتز هو: http://www.quartz-scheduler.org/
ثالثا. مثال ملف التكوين Quartz2.2.1
# ملف الخصائص الافتراضية للاستخدام بواسطة StdScheDulerFactory# لإنشاء مثيل جدولة Quartz ، إذا لم يتم تحديد ملف خصائص# مختلف بشكل صريح. falseorg.quartz.scheduler.rmi.proxy: falseorg.quartz.scheduler.wrapjobexecutioninusertransaction: false org.quartz.threadpool.class: org.quartz.simpl.simplethreadpoolorg.quartz.therdz. 10org.quartz.ThreadPool.ThreadPriority: 5org.quartz.threadpool.ThreadSinheritContextClasslasslassipinitializing: true org.quartz.jobstore.misfirethreshold: 60000 # ========================================================================================================================================================================= JobStore#============================================================================================================= #Default التكوين ، حفظ البيانات إلى الذاكرة#org.quartz.jobstore.class: org.quartz.simpl.RamjobStore#التكوين الدائم org.quartz.jobstore.class: org.quartz.impl.jdbcjobstore.jobstoretxorg.quartz.jobstore.driverdlegateClass: org.quartz.impl.jdbcjobstore.stdjdbcdbcdelegateorg.quartz org.quartz.jobstore.tableprefix: qrtz_org.quartz.jobstore.datasource: QZDS #======================================================================= ========================================================================= تكوين DataSources#===================================================================================================================================================== org.quartz.datasource.qzds.driver: com.mysql.jdbc.driverorg.quartz.datasour ce.qzds.url: jdbc: mysql: // localhost: 3306/quartzdborg.quartz.datasource.qzds.user: rotorg.quartz.datasource.qzds.password: 123456org.quartz.datasource.qzds.maxconnection: 10
4. قاعدة البيانات ذات الصلة
يتطلب الثبات إنشاء جداول بيانات الكوارتز في قاعدة البيانات المقابلة مقدمًا. في حزمة إصدار الكوارتز ، يحتوي المستندات/DBTAbs على برامج نصية SQL المقابلة لقواعد البيانات المختلفة.
على سبيل المثال ، إليك MySQL:
حقل جدول البيانات التفسير: