1. Prefacio
Recientemente, las tareas cronometradas se han utilizado en los proyectos de la compañía. Esta publicación de blog resumirá las tareas de tiempo TimeTask. De hecho, TimeTask no se usa mucho en proyectos reales.
Debido a que no puede ejecutarse en un momento específico, solo puede ejecutar el programa a cierta frecuencia.
2. Timertak
En JDK, el temporizador es una clase de temporizador, que se puede configurar para tareas de tiempo especificadas.
En JDK, TimeTask es una clase de tareas cronometrada. Esta clase implementa la interfaz Runnable y es una clase abstracta. Podemos heredar esta clase e implementar tareas cronometradas.
/ *** heredar TimeTkask para implementar tareas de tiempo*/ public class MyTask extiende TimeTkask {@Override public void run () {String CurrentTime = new SimpleDateFormat ("yyy-mm-dd hh: mm: ss"). Format (nueva fecha ()); System.out.println (CurrentTime + "La tarea de tiempo se está ejecutando ..."); } public static void main (string [] args) {Timer Timer = new Timer (); // Una tarea que se ejecuta una vez en 1 segundo, los parámetros son: tarea, retraso, temporizador peroidal. Schedule (nuevo mytask (), 2000, 1000); }} 3. Integrar la primavera
Dos clases principales: ProchuledtimerTask, TimerFactoryBean
La clase ProchuledTimerTask es una implementación de contenedores de TimeTask, a través de la cual se puede definir información de activación para esta tarea.
La clase TimerFactoryBean permite a Spring crear desencadenantes utilizando configuraciones y crear automáticamente instancias de temporizador para un conjunto de frijoles ScheduledtimerTask especificados.
1. Introducir el paquete jar: spring.jar, commons-logging.jar
2. Categoría de negocios de programación cronometrada:
/ *** Programación temporizada de clase ejecutiva*/ Public Class TaskService extiende TimeTask {private int count = 1; public void run () {system.out.println ("th" + count + "ejecutar tarea cronometrada"); contar ++; }} 3. Configuración del núcleo:
<? xml versión = "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"></bean> <bean id="scheduledTimerTask"> <property name="timerTask" ref="taskService" /> <!-- Execute configuration every other day: 24*60*60*1000 --> <!-- Execute the program every 1 second --> <property name="period" value="1000" /> <!-- Execute it after the program starts 4 seconds --> <property name="delay" value="4000" /> </bean> <bean id="timerFactoryBean"> <property name = "ProchuledTimerTasks"> <List> <ref Bean = "ProchuledtimerTask"/> </list> </property> </bean> </beans>
4. Clase de prueba:
Public Class Main {public static void main (String [] args) {// Cargar el archivo de configuración de resorte ApplicationContext context = new ClassPathXMLApPlicationContext ("ApplicationContext.xml"); System.out.println ("<< --------------------------------- >>"); BufferedReader lector = new BufferedReader (new InputStreamReader (System.in)); while (true) {try {if (lector.readline (). Equals ("Quit")) {System.out.println ("<< -------------------------- >>"); System.exit (0); }} Catch (ioException e) {Throw New RuntimeException ("Error sucede ...", e); }}}} Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.