So fügen Sie dem Tomcat-Dienst einen Java-Startbefehl hinzu

So fügen Sie dem Tomcat-Dienst einen Java-Startbefehl hinzu

Mein erstes Serverprogramm

Ich lerne gerade, Online-Spiele zu schreiben, also muss ich serverseitige Programme schreiben. Ich habe mich nach PHP, JAVA und C umgesehen. Schließlich habe ich mich aufgrund der Kompatibilität mit Alibaba Cloud und Tencent Cloud, der geringen Kosten und des geringen Lernaufwands für Java entschieden.

Dann lernen Sie, wie man Java-Klassen schreibt. Und wie man eine Verbindung zur Datenbank herstellt und wie man den Code alle paar Sekunden ausführt. Schließlich können diese beiden kombiniert den einfachsten Server ergeben.

Mein erstes Programm ist sehr einfach. Nachdem Tomcat gestartet wurde, wird es alle 6 Sekunden ausgeführt, um eine Reihe von Zufallszahlen zu generieren und diese an die MySQL-Datenbank zu senden.
Wichtiger Punkt: Selbststartender Timer zum Schreiben in die Datenbank

Da das Schreiben in die Datenbank und Zeitoperationen in früheren Artikeln vorgestellt wurden.

Daher wird in diesem Artikel hauptsächlich der automatische Start erläutert.

Vorhandener Code:

1. Hauptfunktion: mainGame.java (die Funktion, die das Spiel startet.)

2. Frame-Ausführungsklasse: gameEnterFrame.java (verantwortlich für die Schleifenausführung. Ich habe sie so eingestellt, dass sie alle 2 Sekunden ausgeführt wird und die Nummer in die Datenbank schreibt.)

Beim Selbststart gibt es zwei wichtige Punkte:

1. Sie müssen eine Konfigurationsdatei namens web.xml ändern

In WEB-INF unter webRoot.

Wenn Ihr Pfad nicht mit meinem übereinstimmt, bedeutet das leider, dass Sie den falschen Projekttyp erstellt haben.

Denken Sie daran, ein neues Webserverprojekt zu erstellen.

Fügen Sie dieser Datei einfach drei Codezeilen hinzu, um Tomcat mitzuteilen, dass ich eine selbststartende Klasse ausführen möchte, die ich „autoRun“ genannt habe. Wie in der Abbildung unten gezeigt, ist der blaue Teil der Code, den ich hinzugefügt habe.

Fügen Sie es der Einfachheit halber hier ein.

<Listener> 
<listener-class>Spiel.autoRun</listener-class>
</listener>

Mit dieser Überwachungsanweisung können Sie die AutoRun-Klasse zur Laufzeit unter dem Spielpaket ausführen (das Spielpaket ist ein von mir selbst erstelltes Spielklassenpaket, Sie können den Namen Ihres bevorzugten Pakets erstellen). Diese AutoRun-Klasse ist der selbststartende Code, den ich geschrieben habe.

Wie man es konkret schreibt, erfahren Sie weiter unten:

2. So schreiben Sie den selbststartenden Code:

Wir müssen den selbststartenden Code zur Hauptfunktion führen lassen. Erstellen Sie also unter dem Spielpaket eine neue Datei mit dem Namen autoRun.java

Paketspiel;
import javax.servlet.ServletContextEvent; //Dies ist die Klasse, die für den Selbststart und das Server-Hintergrundereignis verwendet wird. import javax.servlet.ServletContextListener; //Dies ist die Klasse, die für den Selbststart und das Abhören im Server-Hintergrund verwendet wird. import game.mainGame; //Wir importieren die Hauptfunktion für einfaches Ausführen. //Deklarieren Sie eine AutoRun-Klasse und verwenden Sie die Schnittstelle zum Abhören im Server-Hintergrund. Feste Verwendung, Auswendiglernen public class autoRun implements ServletContextListener {
//Wenn das Backend initialisiert wird, d. h. wenn das Tomcat-Startereignis auftritt, feste Verwendung public void contextInitialized(ServletContextEvent arg0){
//Schreiben Sie hier, was Sie tun müssenSystem.out.println("MainFunction is running."); 
mainGame.main(null);
}
//Wenn das Backend zerstört wird, d. h. Tomcat geschlossen wird, wird die Nutzung behoben public void contextDestroyed(ServletContextEvent arg0){
//Schreiben Sie hier den Ausführungsinhalt}
}

Wie Sie sehen, besteht die Überwachung des Start- und Herunterfahrstatus von Tomcat aus zwei Teilen.

  • Erstens: Ich fange an, was ich tun möchte
  • Der andere ist geschlossen. Was soll ich tun?

Natürlich ist es geschlossen und ich muss jetzt nichts unternehmen. Ich muss nach dem Start nur die Hauptfunktion des Spiels ausführen. Daher habe ich die Hauptfunktion in den Startvorgang eingefügt.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Tomcat-Startfehler: Lösung für java.util.zip.ZipException
  • Tomcat-Startfehler: java.lang.UnsatisfiedLinkError-Lösung
  • Java Zero-Base-Tutorial: So installieren und starten Sie den Tomcat-Server unter Windows (installationsfreie Version)
  • Fehler beim Starten von Tomcat: Der Proxy hat eine Ausnahme ausgelöst: java.rmi.server.ExportException: Port wird bereits verwendet: 1099 Lösung
  • Erfahren Sie, wie Sie den Tomcat-Hotstart in Javaweb konfigurieren

<<:  Detaillierte Erläuterung der SEO-Optimierungsmethode für Vue-Entwicklungswebsites

>>:  Die Verwendung und der Unterschied zwischen JavaScript-Pseudo-Array und Array

Artikel empfehlen

Die wichtigsten Unterschiede zwischen MySQL 4.1/5.0/5.1/5.5/5.6

Einige Befehlsunterschiede zwischen den Versionen...

Ein Artikel, der Ihnen hilft, die Grundlagen von VUE zu verstehen

Inhaltsverzeichnis Was ist VUE Kern-Plugins in Vu...

Tiefgreifendes Verständnis der Matching-Logik von Server und Standort in Nginx

Server-Abgleichlogik Wenn Nginx entscheidet, in w...

So steuern Sie die Startreihenfolge von Docker Compose-Diensten

Zusammenfassung Docker-Compose kann problemlos me...

CSS löst das Fehlausrichtungsproblem von Inline-Blöcken

Schluss mit Unsinn, Postleitzahl HTML-Teil <di...

Font Treasure House 50 exquisite kostenlose englische Schriftartenressourcen Teil 2

Designer verfügen über eine eigene Schriftartenbi...

So rufen Sie die Browser-Sharing-Funktion in Vue auf

Vorwort Vue (ausgesprochen /vjuː/, ähnlich wie vi...

Informationen zum Fallstrickprotokoll der Vue3-Übergangsanimation

Inhaltsverzeichnis Hintergrund Problemort Weitere...

Wie können die Transaktionseigenschaften von MySQL InnoDB sichergestellt werden?

Vorwort Wenn Sie jemand fragt: „Was sind die Merk...

Vue verwendet Monaco, um Codehervorhebung zu erreichen

Mithilfe der Vue-Sprache und Elementkomponenten m...