Я использую tomcat версии 6.0. Мое требование состоит в том, что когда tomcat запускается, я хотел бы запустить QuartzScheduler
, который будет планировать некоторые задания с регулярным интервалом. Я пытаюсь найти наилучший способ сделать это. Вот варианты, о которых я мог думать -
- Я могу сделать это с помощью сервлета с дескриптором "
load-on-startup
" в файлеweb.xml
, чтобы запустить планировщик и запланировать задания внутри сервлета. - Может быть сделано с помощью
ContextListener
(это лучший подход ко мне, чем 1). Это может быть чистым подходом к запуску планировщика внутри методаcontextInitialized
и выключения планировщика внутри методаcontextDestroyed
. - Использование дескриптора MBean. Я разрабатываю MBean, который начнется, когда сервер запустится с файлом mbeans-descriptor.xml.
Мне кажется, что второй подход лучше. В-третьих, это может быть не очень хорошая идея, так как это явно не мониторинг MBean с помощью jconsole или так. Моя цель - запустить планировщик и остановить его, когда tomcat остановится. Есть ли лучший и более чистый способ сделать это?