[LINUX] Faisons un programme cron en Java! !! (Planificateur de tâches)

Java(cron4j)

-Cron est un type de programme résident (démon) qui est utilisé en standard dans de nombreux systèmes d'exploitation UNIX, et démarre périodiquement le programme spécifié selon le calendrier défini par l'utilisateur. (* Voir le glossaire informatique)

jar Téléchargez le fichier jar à partir du lien ci-dessous et définissez-le dans l'EDI! !! https://www.sauronsoftware.it/projects/cron4j/download.php

Classe de tâches

Commençons par créer une classe pour écrire le processus que vous souhaitez exécuter! !!

CronTask


import java.util.Date;

public class CronTask implements Runnable{

	@Override
	  public void run() {
	    System.out.println(new Date()+": Hiiiii! cron4j!");
	  }

}

Classe de planificateur

MyCronAppTest


import it.sauronsoftware.cron4j.Scheduler;

public class MyCronAppTest {

	  public static void main(String[] args) {
	    MyCronAppTest app = new MyCronAppTest();
	    try {
	      app.schedulerSimple();
	      System.out.println("Press Ctrl+C to stop.");
	      Thread.sleep(100000000);
	    } catch (InterruptedException e) {
	      e.printStackTrace();
	    }
	  }

	  public  void schedulerSimple() {
	    Scheduler scheduler = new Scheduler();
	    // every minute.
	    scheduler.schedule("* * * * *", new CronTask());
	    // start cron4j scheduler.
	    scheduler.start();
	  }
}

Bonus (Scheduler utilisant Servlet)

HelloServlet


import java.io.IOException;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import it.sauronsoftware.cron4j.Scheduler;

public class HelloServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;

		public  void schedulerSimple() {
	    Scheduler scheduler = new Scheduler();
	    // every minute.
	    scheduler.schedule("* * * * *", new CronTask());
	    // start cron4j scheduler.
	    scheduler.start();
	  }

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		MyCronApp app = new MyCronApp();
	    try {
	      app.schedulerSimple();
	      System.out.println("Press Ctrl+C to stop.");
	      Thread.sleep(100000000);
	    } catch (InterruptedException e) {
	      e.printStackTrace();
	    }
		response.getWriter().append("Hello Servlet");
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}

}

Recommended Posts

Faisons un programme cron en Java! !! (Planificateur de tâches)
Faisons un calcul de combinaison avec Python
Lançons le script Bash en Java
Faisons un service de vente au comptant 9 (édition Task Queue)
Enregistrer une tâche dans cron pour la première fois
Faisons un robot Discord.
Créer un bookmarklet en Python
Faisons un service de vente au comptant 4 (en Python mini Hack-a-thon)
Faisons une rumba distante [Matériel]
Faisons une rumba distante [Logiciel]
Faisons une rupture de bloc avec wxPython
Faisons un service de vente au comptant 1
Faisons un graphe avec python! !!
Faisons un spacon avec xCAT
Créez un générateur de rideaux avec Blender
Faisons un service de vente au comptant 3
Lors de l'écriture d'un programme en Python
[Ev3dev] Faisons un programme de contrôle à distance par Python avec le protocole RPyC
Faisons un jeu de shiritori avec Python
J'ai fait un programme de gestion de la paie en Python!
Faisons la voix lentement avec Python
Ecrire un programme de chiffrement Caesar en Python
Faisons un langage simple avec PLY 1
Créez un framework Web avec Python! (1)
Faisons une IA à trois yeux avec Pylearn 2
Faisons un bot Twitter avec Python!
Créez un framework Web avec Python! (2)
Faisons un plug-in backend pour Errbot
Exécutez cbc de "Faisons un compilateur normal" avec Java 8 ou version ultérieure + 64 bits
J'ai écrit une classe en Python3 et Java
Un programme qui supprime les instructions en double en Python
Copiez la liste en Python
Créez un jeu cocos2d avec une fenêtre à double angle de pixels
Créez un jeu Janken en une seule ligne (python)
Notes de programme simples Pub / Sub en Python
Faisons quelques exemples de traitement des notifications en Python
Remplaçons UWSC par Python (5) Faisons un robot
Créez un tracé de R semblable à un joyplot avec python
Faisons un module pour Python en utilisant SWIG
J'ai créé un programme cryptographique César en Python.
Faisons un saut dans l'industrie manufacturière en utilisant le Web en plus de Python