عملية تكوين الكوارتز في الربيع:
1. استيراد حزمة جرة
تم تضمين حزمة JAR المطلوبة من قبل الكوارتز بالفعل في الربيع ، الواقعة في Quartz-All-1.6.1.Jar Under /Lib /Quartz في الدليل بعد إلغاء الضغط الربيعي.
ما عليك سوى نسخه إلى موقع الويب/LIB للمشروع.
2. تكوين web.xml لتحميل ملف تكوين الكوارتز عند بدء الربيع
<؟ XSI: schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" <Param-Name> contextConfigLocation </param-name> <Param-value> classpath: application-*.
3. اكتب ملف تكوين الكوارتز: application-quartz.xml في الواقع ، يمكن كتابة هذه التكوينات في ملفات تكوين الربيع الأخرى.
<؟ xmlns: aop = "http://www.springframework.org/schema/aop" http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/Aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd الكيان-> <bean id = "testTaskBean" /> <!-طريقة مهمة سياسة التحديث المحددة-> <bean id = "testTaskTytimErmethod"> <property name = "targetObject" ref = "testTaskBean" /> <! </bean> <!-مشغل سياسة التحديث المحدد-> <bean id = "testTaskTrigger"> <property name = "jobdetail" ref = "syncpolicytasktydermethod"/> <!-تنفيذ كل 3 دقائق من الساعة الثانية-> <property name = "cronexpression" value = "0 0/3 *؟" /> </bean> <!-قائمة المهام المخصصة-> <bean id = "Scheduler"> <property name = "triggers"> <list> <ref bean = "testTaskTrigger"/> </list> </propert
4. اكتب java class testtask التي تنفذ المهام
حزمة com.jp.task ؛ استيراد org.quartz.jobexecutioncontext ؛ استيراد org.quartz.jobexecutionexception ؛ استيراد org.springframework.scheduling.quartz.quartzjobbean ؛ يمتد TestTask من الفئة العامة QuartzJobbean {logger log = logger.getLogger (policyservicetest.class) ؛ public void executeAction () {log.info ("Hello Quartz") ؛ } Override void void executeInternal (JobexecutionContext Arg0) يلقي JobexecutionException {}} 5. كل العمل جاهز ويدير. في الأساس ، تم الإبلاغ عن خطأ. إنه عن خطأ nosuchmethod.
ويرجع ذلك إلى انخفاض النسخة من العموم. تحتاج إلى Commons-Collections-3.2.jar أو أعلى.
في هذا الوقت ، أنت تبحث عن Commons-Collections-3.2.jar في المشروع. ماذا يحدث هنا؟ إذا بحثت عنها مرة أخرى ، فستجد أن هناك Commons-Collections-2.1.1.jar في السبات.
فقط حذف العموم-Collections -2.1.1.Jar.
ملاحظة: cronexpression-وصف التعبير كرون
يستخدم Trigger Cron سلسلة من الشخصيات الخاصة ، كما هو موضح أدناه:
يشير الحرف backslash (/) إلى القيمة الإضافية. على سبيل المثال ، في الحقل "5/15" يعني بدءًا من الثانية ، مرة واحدة كل 15 ثانية.
لا تتوفر أحرف "علامة الاستفهام" (؟) أحرف L -Letter L في تاريخ الشهر وتاريخ الأسبوع. تشير علامة الاستفهام إلى أن هذا الحقل لا يحتوي على قيم محددة. لذلك ، إذا حددت تاريخًا خلال الشهر ، فيمكنك إدراج "؟" في التاريخ خلال الأسبوع للإشارة إلى أن قيمة التاريخ خلال الأسبوع لا تهم. الحرف l الشخصية هو اختصار الأخير. ضعها في حقل تاريخ Intramonth ، مما يعني أنه من المقرر تنفيذها في اليوم الأخير من الشهر. في حقل تاريخ Intraweek ، إذا كان "L" موجودًا بمفرده ، فإنه يساوي "7" ، وإلا فإنه يمثل المثيل الأخير من تاريخ intraweek في الشهر. لذلك ، يعني "0L" أنه من المقرر تنفيذها في يوم الأحد الأخير من الشهر.
حرف الحرف (W) في حقل التاريخ خلال جدولة الشهر تنفيذ يوم العمل الأقرب إلى القيمة المحددة. يعني وضع "1W" في حقل تاريخ الشهر أن التنفيذ قد تم جدولةه خلال أول يوم عمل من الشهر.
تحدد شخصية علامة الجنيه (#) مثيلًا محددًا ليوم عمل لشهر معين. يعني وضع "Mon#2" في مجال تاريخ Intraweek جدولة المهمة في الاثنين الثاني من الشهر.
شخصية النجمة (*) هي حرف Bildcard وهذا يعني أن الحقل يمكن أن يقبل أي قيم محتملة.
الأحرف الخاصة التي يسمح بها القيم المسموح بها الحقل:
0-59 ثانية ، - * /
0-59 ، - * /
ساعات 0-23 ، - * /
التاريخ 1-31 ، - *؟ / LWC
الأشهر 1-12 أو يناير ديسمبر ،- * /
الأسبوع 1-7 أو الشمس سات ،- *؟ / LC #
سنة (اختيارية) اترك فارغة ، 1970-2099 ، - * /
معنى التعبير
"0 0 12 * *؟" نشأ في الساعة 12 ظهراً كل يوم
"0 15 10؟ * *" تم تشغيله في الساعة 10:15 صباحًا كل يوم
"0 15 10 * *؟" نشأ في الساعة 10:15 صباحًا كل يوم
"0 15 10 *؟ *" يتم تشغيله كل يوم في الساعة 10:15 صباحًا
"0 15 10 *؟ 2005" تم تشغيله في الساعة 10:15 صباحًا كل يوم في عام 2005
"0 * 14 * *؟" يدرس كل دقيقة واحدة بين الساعة 2 مساءً و 2:59 مساءً
"0 0/5 14 *؟" يتم تشغيل كل 5 دقائق بين الساعة 2 مساءً و 2:55 مساءً كل يوم
"0 0/5 14،18 *؟" يتم تشغيل كل 5 دقائق بين 2:55 مساءً وبين 6:55 مساءً وبين 6:55 مساءً وكل 5 دقائق بين
"0-5 14 * *؟" يتم تشغيل كل دقيقة بين الساعة 2 مساءً و 2:05 مساءً كل يوم
"0 10،44 14؟ 3 Wed" يظهر كل يوم أربعاء في 2:10 و 2:44 مساءً
"0 15 10؟ * Mon-Fri" تم تشغيله من الساعة 10:15 صباحًا من الاثنين إلى الجمعة
"0 15 10 15 *؟" نشأ في الساعة 10:15 صباحًا في 15 من كل شهر
"0 15 10 L *؟" نشأ في الساعة 10:15 صباحًا في اليوم الأخير من كل شهر
"0 15 10؟ * 6L" تم تشغيله في الساعة 10:15 صباحًا يوم الجمعة الأخير من كل شهر
"0 15 10؟ * 6L 2002-2005" نشأ في الساعة 10:15 صباحًا يوم الجمعة الأخير من كل شهر من 2002 إلى 2005
"0 15 10؟ * 6#3" تدور كل يوم في الساعة 10:15 صباحًا يوم الجمعة الثالث من كل شهر الساعة 6 صباحًا
0 6 * * *
كل ساعتين
0 */2 * *
كل ساعتين بين الساعة 11 مساءً و 8 صباحًا ، 8 صباحًا
0 23-7/2 ، 8 * *
في الرابع من كل شهر ومن الاثنين إلى الأربعاء من كل أسبوع الساعة 11 صباحًا.
0 11 4 * 1-3
1 يناير في الساعة 4 صباحًا
0 4 1 1 *