关于一个spring时间高度问题

先看代码:

[code="java"]







<bean id="userLoadTrigger"
    class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail">
        <ref bean="userLoadInvokingJobDetail"/>
    </property>
    <property name="cronExpression">
        <value>0 38 16 * * ?</value>
    </property>
</bean>
<bean id="dataLoadTrigger"
    class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail">
        <ref bean="dataLoadInvokingJobDetail"/>
    </property>
    <property name="cronExpression">
        <value>0 50 8,16 * * ?</value>
    </property>
</bean>

<bean id="userLoadInvokingJobDetail"
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="fingerSystemManageImpl"/>
    <property name="targetMethod">
        <value>loadUser</value>
    </property>
</bean>

<bean id="dataLoadInvokingJobDetail"
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="fingerSystemManageImpl"/>
    <property name="targetMethod">
        <value>loadData</value>
    </property>
</bean>

    <bean id="fingerSystemManageImpl" class="com.包名(省略).FingerSystemManageImpl" scope="prototype"/>

@Override
public void loadData() {
    System.out.println(" begin loadData");

}

[/code]

那段打印代码一直没执行,麻烦看一下问题在哪?

4个回答

好像没有问题,你把时间改为每分钟时间触发
可以出发的话,你看看你的jre运行的时区是不是不正确,可能有8个小时的误差,jvm启动的参数加上就行了

1.dataLoadTrigger->jobDetail,dataLoadInvokingJobDetail->fingerSystemManageImpl
从你的配置文件看是没有看出来问题,这最直接的依赖注入。

2.你debug一下。你在触发点SchedulerFactoryBean(这个应该是一个组合器,组合模式)中打一个断点试一试。看看两个trigger是否都没执行。从源头找起。

[code="xml"]









[/code]

替换成
[code="xml"]











[/code]

他那个好像没什么问题,现在不都这样用吗?那样也可以。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问