Рубрики
Без рубрики

Стойки 2 + Пружина 2.5.6 + Кварц 1.6 пример интеграции планировщика

– Стойки 2 + Пружина 2.5.6 + Кварцевый 1.6 пример интеграции планировщика

Стойки 2 + Пружина 2.5.6 + Пример интеграции планировщика Quartz

В этом уроке мы покажем вам, как объединить Struts2 + Spring 2.5.6 + Quartz 1.6.5 планировщик вместе. Отношения выглядят так:

Struts 2 <-- Plugin --> Spring <--(Helper)--> Quartz <---> Scheduler task

Используемые инструменты

  1. Весна 2.5.6
  2. Кварц 1.6.3
  3. Стойки 2.1.8
  4. Распорки 2-пружина-плагин 2.1.8
  5. Мавен 2
  6. Затмение 3.6

1. Папка проекта

Вот структура папок проекта.

2. Библиотеки зависимостей

Получите все библиотеки зависимостей, вам нужны Spring, Struts2, Struts2-Spring-плагин и файл Quartz jar.

Файл: pom.xml

  ...
  

	
	
          org.apache.struts
	  struts2-core
	  2.1.8
        

	
	
          opensymphony
	  quartz
	  1.6.3
	
	 
	
	
	  commons-collections
	  commons-collections
	  3.2.1
	

	 
	
	  org.springframework
	  spring
	  2.5.6
	

	
	  org.springframework
	  spring-web
	  2.5.6
	

	
	
          org.apache.struts
	  struts2-spring-plugin
	  2.1.8
        

  
  ...

3. Задача планировщика

Поместите всю логику планировщика в этот класс.

Файл: SchedulerTask.java

package com.mkyong.quartz;
 
public class SchedulerTask {
	
   public void printSchedulerMessage() {
	
	   System.out.println("Struts 2 + Spring + Quartz ......");
	   
   }
}

4. Пружина + Кварц

Чтобы интегрировать Spring и Quartz, создайте класс, расширяющий org.springframework.планирование.кварц. QuartzJobBean , ссылка на задачу планировщика ( SchedulerTask.java ) с помощью метода настройки и поместите логику планировщика в метод executeInternal() .

Файл: SchedulerJob.java

package com.mkyong.quartz;
 
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;
 
public class SchedulerJob extends QuartzJobBean
{
	private SchedulerTask schedulerTask;
 
	public void setSchedulerTask(SchedulerTask schedulerTask) {
		this.schedulerTask = schedulerTask;
	}
 
	protected void executeInternal(JobExecutionContext context)
	throws JobExecutionException {
 
		schedulerTask.printSchedulerMessage();
 
	}
}

Файл: applicationContext.xml – Создать applicationContext.xml файл, поместите все Пружинные + кварцевые интеграционные материалы внутрь. Прочитайте комментарии XML для получения подробной информации.


 
   
   
 
   
   
 
     
 
     
	 
	    
	 
      
   
 
   
   
 
	
	
 
   
 
   
   
	
	   
	      
	   
	
 
	
	    
		
	    
	
   
 

5. Стойки 2 + Пружина

Чтобы интегрировать Стойки 2 +пружина , просто поместите org.springframework.web.контекст. ContextLoaderListener класс прослушивателя в web.xml файл.

Файл: web.xml





  Struts 2 Web Application
  
  
	struts2
	
	  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
	
  
  
  
	struts2
	/*
  
 
  
    
	  org.springframework.web.context.ContextLoaderListener
	
  
  

6. Демонстрация

Когда запускается Strut 2, он вызывает Spring и запускает вызов задания определенного Quartz schedulertask.printschedulermessage() каждые 10 секунд.

INFO: ... initialized Struts-Spring integration successfully
16 Julai 2010 12:51:38 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
16 Julai 2010 12:51:38 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
16 Julai 2010 12:51:38 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/21  config=null
16 Julai 2010 12:51:38 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 2110 ms
Struts 2 + Spring + Quartz ......
Struts 2 + Spring + Quartz ......
Struts 2 + Spring + Quartz ......
Struts 2 + Spring + Quartz ......
Struts 2 + Spring + Quartz ......

Скачать Исходный Код

Рекомендации

  1. Пример интеграции стоек 2 + пружины
  2. Документация по плагину Struts 2 Spring
  3. Пример интеграции стоек + пружин
  4. Пример интеграции Распорки + кварц
  5. Стойки + Пружина + Пример интеграции кварца

Оригинал: “https://mkyong.com/struts2/struts-2-spring-quartz-scheduler-integration-example/”