Quartzタイミングタスクトリガ起動時設定
2034 ワード
インプリメンテーション
init
メソッドを設定することにより、Beanを構成する際にデータベースからのCron式の取得を実行する.ini
を継承するクラスを新規作成する必要があります.CronTriggerBean
メソッドでデータベースからCron式を取得し、ini
に設定する.
exec
public class CronTriggerBean extends CronTriggerBean{
public void init(){
String hql = "xxx";
List list = Dao.getHibernateTemplate().find(sb.toString());
String cronExpression=null;
if(null!=list&&list.size()>0){
cronExpression=list.get(0).getCCronExpression();
}else{
// Cron , , Cron
cronExpression="0 0 5 31 2 ?";
logger.error(" Cron 。");
}
try {
super.setCronExpression(cronExpression);
} catch (ParseException e) {
logger.error(String.format(" Cron , Cron 【0 0 5 31 2 ?】, Cron 【%s】。", cronExpression));
// Crontab , Cron
try {
super.setCronExpression("0 0 5 31 2 ?");
} catch (ParseException e1) {
}
}
}
}
原文を参照:http://yuyy.info/uncategorized/quartz%e5%ae%9a%e6%97%b6%e4%bb%bb%e5%8a%a1%e8%a7%a6%e5%8f%91%e5%99%a8%e5%90%af%e5%8a%a8%e6%97%b6%e8%ae%be%e7%bd%ae/