1. Préface
Récemment, des tâches chronométrées ont été utilisées dans les projets de l'entreprise. Ce billet de blog résumera les tâches de chronométrage de Timemery. En fait, Timertask n'est pas beaucoup utilisé dans les projets réels.
Parce qu'il ne peut pas s'exécuter à un moment spécifié, il ne peut exécuter le programme qu'à une certaine fréquence.
2. Time
Dans JDK, Timer est une classe de minuterie, qui peut être configurée pour les tâches de synchronisation spécifiées.
Dans JDK, Timertask est une classe de tâches chronométrée. Cette classe implémente l'interface Runnable et est une classe abstraite. Nous pouvons hériter de cette classe et implémenter des tâches chronométrées.
/ ** * hériter de la time pour implémenter les tâches de synchronisation * / public class MyTask étend Timertask {@Override public void run () {String currentTime = new SimpledateFormat ("yyy-mm-dd hh: mm: ss"). Format (new Date ()); System.out.println (CurrentTime + "La tâche de synchronisation s'exécute ..."); } public static void main (String [] args) {Timer Timer = new Timer (); // une tâche qui est exécutée une fois en 1 seconde, les paramètres sont: tâche, retard, périoïde timer.schedule (new MyTask (), 2000, 1000); }} 3. Intégrer le printemps
Deux classes de base: ScheduledTimertask, TIMERFACTORYBEAN
La classe ScheduledTimertask est une implémentation en wrapper de Timertask, à travers laquelle les informations de déclenchement peuvent être définies pour cette tâche.
La classe TIMERFACTORYBEAN permet à Spring de créer des déclencheurs à l'aide de configurations et de créer automatiquement des instances de minuterie pour un ensemble de Beans ScheduledTimertAsk spécifiés.
1. Présentez le package JAR: Spring.jar, commons-Logging.jar
2. Catégorie d'activité de planification chronométrée:
/ ** * Classe commerciale de planification chronométrée * / classe publique TaskService étend Timertask {private int count = 1; public void run () {System.out.println ("th" + count + "Exécuter la tâche chronométrée"); Count ++; }} 3. Configuration du cœur:
<? xml version = "1.0" encoding = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" XSI: ScheMalocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-Beans-2.5.xsd"> <Bean Id = "TaskService"> </ean> <e Bean Id = "ScheduledtiMtask">; name = "Timertask" ref = "taskservice" /> <! - Exécutez la configuration tous les deux jours: 24 * 60 * 60 * 1000 -> <! - Exécutez le programme toutes les 1 secondes -> <propriété name = "period" value = "1000" /> <! name = "ScheduledTimemertasks"> <s list> <ref bean = "ScheduledTimertAsk" /> </sist> </ propriété> </ bean> </bans>
4. Classe de test:
public class main {public static void main (string [] args) {// charger le fichier de configuration de Spring ApplicationContext context = new classPathxmlApplicationContext ("applicationContext.xml"); System.out.println ("<< ----------------------------- >>"); BufferedReader Reader = new BufferedReader (new InputStreamReader (System.in)); while (true) {try {if (reader.readline (). equals ("quit")) {System.out.println ("<< ---------------------- >>"); System.exit (0); }} catch (ioException e) {Throw New RuntimeException ("Erreur se passe ...", e); }}}} Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.