Maison >Java >javaDidacticiel >Comment ajouter une commande de démarrage Java au service Tomcat
Code existant :
1. Fonction principale : maingame.java (La fonction qui démarre le jeu.)
2. Classe d'exécution du cadre : gameenterframe.java (responsable de l'exécution de la boucle, je l'ai configuré pour s'exécuter pendant 2 secondes. Une fois, écrivez les données dans la base de données.)
Concernant le démarrage automatique, il y a deux points clés :
1 Vous devez modifier un fichier de configuration nommé web.xml
sous webroot inf.
Si vous n'avez pas le même chemin que sur ma photo, cela signifie malheureusement que vous avez créé le mauvais type de projet.
N'oubliez pas de créer un nouveau projet de serveur Web.
Ajoutez simplement trois lignes de code à ce fichier pour indiquer à Tomcat que je souhaite exécuter une classe à démarrage automatique, je la nommerai autorun et c'est tout. Comme indiqué ci-dessous, la partie bleue est le code que j'ai ajouté.
C’est pratique pour tout le monde, il suffit de le coller.
<listener> <listener-class>game.autorun</listener-class> </listener>
Avec cette surveillance, vous pouvez exécuter la classe d'exécution automatique sous le package de jeu (le package de jeu est un package de jeu que j'ai créé moi-même, vous pouvez créer le nom du package que vous aimez) au moment de l'exécution. Cette classe d'exécution automatique est le code à démarrage automatique que j'ai écrit.
Pour plus de détails sur la façon d'écrire, voir ci-dessous :
2. Comment écrire du code à démarrage automatique :
Nous devons laisser le code à démarrage automatique mener à la fonction principale. Donc, sous le package du jeu, créez un nouveau fichier nommé autorun.java
package game; import javax.servlet.servletcontextevent;//这个是自启动要用到的类,服务器后台事件 import javax.servlet.servletcontextlistener;//这个是自启动要用到的类,服务器后台监听 import game.maingame;//我们把主函数导入进来以便于运行 //声明一个autorun类,使用服务器后台监听接口。固定用法,死记硬背 public class autorun implements servletcontextlistener{ //当后台被初始化,即发生了tomcat启动了事件,固定用法 public void contextinitialized(servletcontextevent arg0){ //你要做的事儿,写在这里 system.out.println("mainfunction is running."); maingame.main(null); } //当后台被销毁,即发生了tomcat关闭了事件,固定用法 public void contextdestroyed(servletcontextevent arg0){ //执行内容写在这里 } }
Vous pouvez voir qu'il y a deux parties dans la surveillance de l'état de démarrage et d'arrêt de Tomcat,
L'une est ce que je veux faire quand il est commencé
L'autre C'est fermé. Qu'est-ce que je veux faire ? Bien sûr, c'est fermé. Je n'ai pas encore besoin d'effectuer d'action. J'ai juste besoin d'exécuter la fonction principale du jeu après le démarrage. J'ai donc mis la fonction principale dans le startup.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!