Beispiel für die Implementierung von Spring+Quarz
Es gibt ein Problem im Projekt meines Freundes. Seine Seite basiert auf der Spring-Architektur und hat eine relativ einfache Aufgabe, die eine geplante Ausführung erfordert. Nachdem er seine Bedürfnisse verstanden hatte, schlug er eine relativ einfache Spring+Quarz-Implementierung vor.
Beachten Sie, dass in diesem Artikel nur erläutert wird, wie die einfachsten geplanten Aufgaben im Rahmen des abgeschlossenen Spring-Projekts erledigt werden.
Der erste Schritt besteht darin, die Spring-Architektur kennenzulernen, die sehr interessant und interessant ist. Der Effekt des freien Ein- und Aussteckens von Funktionsmodulen kann erzielt werden. Das Engineering-Projekt basiert auf der MAVEN-Paketabhängigkeitsverwaltung. Listen Sie daher die benötigten Abhängigkeitspaketreferenzen auf:
1 <!-- 定时器依赖 开始 --> 2 <dependency> 3 <groupId>org.springframework</groupId> 4 <artifactId>spring-context-support</artifactId> 5 <version>4.0.2.RELEASE</version> 6 </dependency> 7 8 9 10 <dependency>11 <groupId>org.quartz-scheduler</groupId>12 <artifactId>quartz</artifactId>13 <version>2.2.1</version>14 </dependency>15 <!-- 定时器依赖 结束 -->
Dies hängt natürlich von der entsprechenden Spring-Versionsübereinstimmung ab. Unser Projekt hier ist 4.0.2. Das vorherige Paket spring-context-support wird hauptsächlich als Komponente für die Kommunikation und Verwaltung zwischen Spring und Quartz verwendet. Wenn es auskommentiert ist, wird ein Fehler wie dieser gemeldet
in der MAVEN-Konfiguration Nachdem wir die Pakete fertiggestellt haben, die hinzugefügt werden müssen (andere Pakete werden hier vorerst nicht besprochen, dieser Artikel behandelt nur die Konfiguration im Rahmen des vollständigen Spring-Projekts), können wir damit beginnen, Funktionsmodule für geplante Aufgaben hinzuzufügen dieses Projekt.
Der zweite Schritt besteht darin, beim Ursprung des Webprojekts zu beginnen, den Änderungen in web.xml. Da die Spring-Konfigurationsdatei des ursprünglichen Projekts Spring-mvc.xml war, habe ich die Konfigurationsdatei der geplanten Aufgabe in spring-time.xml geändert. Auf diese Weise kann beim Start die gleiche Scan-Konfiguration gelesen werden. Der spezifische Code lautet wie folgt:
1 <context-param>2 <param-name>contextConfigLocation</param-name>3 <param-value>classpath:spring-*.xml</param-value>4 </context-param>
Dann zeige ich Ihnen meine Projektstruktur:
Mit dieser Konfiguration weiß das Projekt, wie es aufzurufen ist. Nachdem wir diesen Schritt erreicht haben, können wir weitermachen.
Der dritte Schritt besteht darin, die Kernkonfiguration von spring-timer.xml abzuschließen, eine geplante Aufgabe. In dieser Dateikonfiguration erledigen wir hauptsächlich drei Dinge:
1. Konfigurieren Sie die Starteinstellungen bezüglich des verzögerten Ladens (um es kurz auszudrücken: Das Initialisieren einer bestimmten Variablen auf Null ist beispielsweise auch eine Art verzögertes Laden. Das Dies bedeutet, dass der Dienst nach dem Start nur dann instanziiert wird, wenn er tatsächlich aufgerufen wird. Dies kann nur logischen Speicherplatz sparen, kann aber auch dazu führen, dass das Problem mit einer langen Verzögerung erkannt wird . , wird hier nicht im Detail erklärt) und die Konfiguration des Triggers;
2. Die Konfiguration von quartz-2.x, einschließlich des Namens des Jobs, der nach dem Auslösen der geplanten Aufgabe aufgerufen werden soll , und der Maisausdruck (d. h. der geplante Ausdruck steuert den Grund, warum das Programm wiederholt ausgeführt wird. Dieses Mal werde ich den Inhalt zum Cron-Ausdruck später hinzufügen).
3. Konfigurieren Sie den Inhalt des Jobs und des spezifische Klasse, die dem Job entspricht.
Nachdem die Erklärung des logischen Prozesses abgeschlossen ist, finden Sie hier den Code:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:p="http://www.springframework.org/schema/p" 5 xsi:schemaLocation="http://www.springframework.org/schema/beans 6 "> 7 8 <!-- 启动触发器的配置开始 --> 9 <bean name="startQuertz" lazy-init="false" autowire="no" 10 class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 11 <property name="triggers"> 12 <list> 13 <ref bean="myJobTrigger" /> 14 </list> 15 </property> 16 </bean> 17 <!-- 启动触发器的配置结束 --> 18 19 <!-- 调度的配置开始 --> 20 <!-- 21 quartz-1.8以前的配置 22 <bean id="myJobTrigger" 23 class="org.springframework.scheduling.quartz.CronTriggerBean"> 24 <property name="jobDetail"> 25 <ref bean="myJobDetail" /> 26 </property> 27 <property name="cronExpression"> 28 <value>0/1 * * * * ?</value> 29 </property> 30 </bean> 31 --> 32 <!-- quartz-2.x的配置 --> 33 <bean id="myJobTrigger" 34 class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> 35 <property name="jobDetail"> 36 <ref bean="myJobDetail" /> 37 </property> 38 <property name="cronExpression"> 39 40 <value>0/10 * * * * ?</value>41 <!-- <value>1 52 * * * ?</value> --> 42 </property> 43 </bean> 44 <!-- 调度的配置结束 --> 45 46 <!-- job的配置开始 --> 47 <bean id="myJobDetail" 48 class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 49 <property name="targetObject"> 50 <ref bean="myJob" /> 51 </property> 52 <property name="targetMethod"> 53 <value>work</value> 54 </property> 55 </bean> 56 <!-- job的配置结束 --> 57 58 <!-- 工作的bean --> 59 <bean id="myJob" class="com.tec.kevin.quartz.jobTest" /> 60 61 </beans>
Der vierte Schritt ist die Implementierung der spezifischen Geschäftslogik.
Was hier zu beachten ist, sind die beiden Punkte im Bild unten
Das Bild oben ist spezifisch Der Name der Geschäftsimplementierungsklasse muss mit der geplanten Aufgabenkonfiguration in der folgenden Abbildung übereinstimmen.
Nach Abschluss der oben genannten Schritte können wir mit dem Projekt beginnen, um den tatsächlichen Effekt zu sehen.
Wie Sie hier sehen können, wird die geplante Aufgabe gemäß unserer vorherigen Konfiguration alle 10 Sekunden ausgeführt.
Als nächstes folgen zwei Artikel, einer befasst sich mit einer einfacheren Implementierungsmethode zum Schreiben geplanter Aufgaben und der andere erklärt Cron-Ausdrücke.
Das obige ist der detaillierte Inhalt vonBeispiel für die Implementierung von Spring+Quarz. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der Terrorkorridor ist eine Mission in Goat Simulator 3. Wie können Sie die detaillierten Räumungsmethoden und entsprechenden Prozesse meistern und die entsprechenden Herausforderungen dieser Mission meistern? Leitfaden zum Erlernen verwandter Informationen. Goat Simulator 3 Terror Corridor Guide 1. Zuerst müssen die Spieler zum Silent Hill in der oberen linken Ecke der Karte gehen. 2. Hier sehen Sie ein Haus mit der Aufschrift „RESTSTOP“ auf dem Dach. Um dieses Haus zu betreten, müssen die Spieler die Ziege bedienen. 3. Nachdem wir den Raum betreten haben, gehen wir zunächst geradeaus und biegen dann rechts ab. Hier befindet sich am Ende eine Tür, von hier aus gehen wir direkt hinein. 4. Nach dem Betreten müssen wir auch zuerst vorwärts gehen und dann rechts abbiegen. Wenn wir hier die Tür erreichen, müssen wir umkehren und sie finden.

Goat Simulator 3 ist ein Spiel mit klassischem Simulationsspiel, das es den Spielern ermöglicht, den Spaß einer Gelegenheits-Action-Simulation in vollen Zügen zu genießen. Das Spiel hat auch viele spannende Spezialaufgaben. Unter anderem erfordert die Goat Simulator 3 Imperial Tomb-Aufgabe, dass die Spieler den Glockenturm finden. Einige Spieler sind sich nicht sicher, wie sie die drei Uhren gleichzeitig bedienen sollen. Hier ist die Anleitung zur Tomb of the Tomb-Mission in Goat Simulator 3. Die Anleitung zur Tomb of the Tomb-Mission in Goat Simulator 3 besteht darin, die Glocken zu läuten in Ordnung. Detaillierte Schritterweiterung 1. Zuerst müssen die Spieler die Karte öffnen und zum Wuqiu-Friedhof gehen. 2. Gehen Sie dann hinauf zum Glockenturm. Dort befinden sich drei Glocken. 3. Folgen Sie dann 222312312 in der Reihenfolge vom größten zum kleinsten, um sich mit dem wütenden Klopfen vertraut zu machen. 4. Nachdem Sie das Klopfen abgeschlossen haben, können Sie die Mission abschließen und die Tür öffnen, um das Lichtschwert zu erhalten.

Steve zu retten ist eine einzigartige Aufgabe in Goat Simulator 3. Was genau muss getan werden, um sie abzuschließen? Diese Aufgabe ist relativ einfach, aber wir müssen aufpassen, dass wir die Bedeutung von Steve nicht falsch verstehen Simulator 3-Aufgabenstrategien können Ihnen dabei helfen, verwandte Aufgaben besser zu erledigen. Goat Simulator 3 Rescue Steve Mission Strategie 1. Kommen Sie zuerst zur heißen Quelle in der unteren rechten Ecke der Karte. 2. Nachdem Sie an der heißen Quelle angekommen sind, können Sie die Aufgabe auslösen, Steve zu retten. 3. Beachten Sie, dass es in der heißen Quelle einen Mann gibt, der zwar Steve heißt, aber nicht das Ziel dieser Mission ist. 4. Finden Sie in dieser heißen Quelle einen Fisch namens Steve und bringen Sie ihn an Land, um diese Aufgabe abzuschließen.

Im Jahr 2023 ist die KI-Technologie zu einem heißen Thema geworden und hat enorme Auswirkungen auf verschiedene Branchen, insbesondere im Programmierbereich. Die Bedeutung der KI-Technologie wird den Menschen zunehmend bewusst, und die Spring-Community bildet da keine Ausnahme. Mit der kontinuierlichen Weiterentwicklung der GenAI-Technologie (General Artificial Intelligence) ist es entscheidend und dringend geworden, die Erstellung von Anwendungen mit KI-Funktionen zu vereinfachen. Vor diesem Hintergrund entstand „SpringAI“ mit dem Ziel, den Prozess der Entwicklung von KI-Funktionsanwendungen zu vereinfachen, ihn einfach und intuitiv zu gestalten und unnötige Komplexität zu vermeiden. Durch „SpringAI“ können Entwickler einfacher Anwendungen mit KI-Funktionen erstellen, wodurch diese einfacher zu verwenden und zu bedienen sind.

So implementieren Sie programmgesteuerte Spring-Transaktionen: 1. Verwenden Sie TransactionCallback und TransactionCallbackWithoutResult; 4. Verwenden Sie TransactionTemplate in Kombination mit @Transactional;

Als eine der derzeit beliebtesten Social-Media-Plattformen hat TikTok eine große Anzahl von Nutzern zur Teilnahme angezogen. Auf Douyin gibt es viele Fangruppenaufgaben, die Benutzer erledigen können, um bestimmte Belohnungen und Vorteile zu erhalten. Wo finde ich die Aufgaben des Douyin-Fanclubs? 1. Wo kann ich die Aufgaben des Douyin-Fanclubs einsehen? Um die Aufgaben einer Douyin-Fangruppe zu finden, müssen Sie die persönliche Homepage von Douyin besuchen. Auf der Startseite sehen Sie eine Option namens „Fanclub“. Klicken Sie auf diese Option und Sie können die Fangruppen, denen Sie beigetreten sind, und die damit verbundenen Aufgaben durchsuchen. In der Spalte „Fanclub-Aufgaben“ sehen Sie verschiedene Arten von Aufgaben, wie z. B. Likes, Kommentare, Teilen, Weiterleiten usw. Für jede Aufgabe gibt es entsprechende Belohnungen und Anforderungen. Im Allgemeinen erhalten Sie nach Abschluss der Aufgabe eine bestimmte Menge an Goldmünzen oder Erfahrungspunkten.

Als Branchenführer bietet Spring+AI durch seine leistungsstarke, flexible API und erweiterte Funktionen führende Lösungen für verschiedene Branchen. In diesem Thema werden wir uns mit den Anwendungsbeispielen von Spring+AI in verschiedenen Bereichen befassen. Jeder Fall wird zeigen, wie Spring+AI spezifische Anforderungen erfüllt, Ziele erreicht und diese LESSONSLEARNED auf ein breiteres Anwendungsspektrum ausdehnt. Ich hoffe, dieses Thema kann Sie dazu inspirieren, die unendlichen Möglichkeiten von Spring+AI tiefer zu verstehen und zu nutzen. Das Spring-Framework hat eine mehr als 20-jährige Geschichte im Bereich der Softwareentwicklung, und seit der Veröffentlichung der Spring Boot 1.0-Version sind 10 Jahre vergangen. Nun kann niemand diesen Frühling bestreiten

Manchmal müssen wir den Computer für eine gewisse Zeit stehen lassen, um ihn weiter herunterzuladen oder bestimmte Programme zuzulassen, und möchten ihn nach Abschluss des Vorgangs einfach herunterfahren Verwenden Sie den Befehl zum Herunterfahren. So richten Sie ein geplantes Herunterfahren in Win11 ein: 1. Klicken Sie zunächst mit der rechten Maustaste auf das Startmenü in der unteren linken Ecke und öffnen Sie „Ausführen“. 2. Geben Sie dann „shutdown-s-t7200“ ein und drücken Sie die Eingabetaste, um es auszuführen. (7200 ist hier die geplante Abschaltzeit in Sekunden, 7200 ist die Abschaltzeit nach 2 Stunden) 3. Auf diese Weise können wir die Einstellung für das geplante Herunterfahren abschließen. 4. Wenn Sie das geplante Herunterfahren abbrechen möchten, geben Sie einfach „shutdown-a“ ein und drücken Sie die Eingabetaste. 5. Nach der Bestätigung können Sie das geplante Herunterfahren abbrechen.
