Spring中的Quartz配置

2021-09-30 07:55:09 字數 1640 閱讀 3210

今天在

spring

中配置quartz

框架如下,定義上午的11點

24分30秒執行

userserivce

中的dojob

方法,然而時間到了卻沒有執行

<

bean

autowire

="no"

class

="org.springframework.scheduling.quartz.schedule***ctorybean"

>

<

property

name

="triggers"

>

<

list

>

<

reflocal

="crontrigger"

/>

list

>

property

>

bean

>

<

beanid=

"crontrigger"

class

="org.springframework.scheduling.quartz.crontriggerbean"

>

<

property

name

="jobdetail"

ref=

"methodinvokingjobdetail"

/>

<

property

name

="cronexpression"

value

="30 24 11 * * ?"

/>

bean

>

<

beanid=

"methodinvokingjobdetail"

class

="org.springframework.scheduling.quartz.methodinvokingjobdetailfactorybean"

>

<

property

name

="targetobject"

ref=

"userservice"

/>

<

property

name

="targetmethod"

value

="dojob"

/>

bean

>

結果發現在

xml配置頭曾經配置了乙個

default-lazy-init

="true"

的屬性,這導致了所有的

bean

在web

容器啟動的時候都不會自動例項化

因此導致

quartz

框架中的例項

bean

也沒有例項化。

解決方法:

去掉該屬性,預設

default-lazy-init

="false"

或者在區域性的

bean

中配置加上

lazy-init

="false"

修改配置後,重啟

web容器,發現執行正常了!

Spring中的Quartz配置

quartz是乙個強大的企業級任務排程框架,spring中繼承並簡化了quartz。下面就看看在spring中怎樣配置quartz。首先我們來寫乙個被排程的類 quartzjob package com.kay.quartz public class quartzjob spring的quartz配...

Spring中的Quartz配置

首先我們來寫乙個被排程的類 package com.kay.quartz public class quartzjob spring的quartz配置檔案 xml version 1.0 encoding utf 8 beans bean id quartzjob class com.kay.qua...

Spring中Quartz的配置

quartz是乙個強大的企業級任務排程框架,spring中繼承並簡化了quartz,下面就看看在spring中怎樣配置quartz 首先我們來寫乙個被排程的類 public class quartzjob spring的配置檔案 work 10,15,20,25,30,35,40,45,50,55 ...