Java 用ihm对石英晶体进行组态
您好,我希望我的应用程序的用户通过IHM选择一个表达式并配置一个服务事实上我每小时配置一次quartz它工作正常,但当我试图让用户配置作业执行时间时,我使用了以下代码:Java 用ihm对石英晶体进行组态,java,quartz-scheduler,Java,Quartz Scheduler,您好,我希望我的应用程序的用户通过IHM选择一个表达式并配置一个服务事实上我每小时配置一次quartz它工作正常,但当我试图让用户配置作业执行时间时,我使用了以下代码: public void collectorCronScheduling(String expression) { try { triggerBean.setCronExpression(expression); triggerBean.validate(); System.
public void collectorCronScheduling(String expression) {
try {
triggerBean.setCronExpression(expression);
triggerBean.validate();
System.out.println("cron expression modifiée");
schedulerFactoryBean.start();
System.out.println("scheduler started");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SchedulerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public CronTriggerBean getTriggerBean() {
return triggerBean;
}
public void setTriggerBean(CronTriggerBean triggerBean) {
this.triggerBean = triggerBean;
}
public SchedulerFactoryBean getSchedulerFactoryBean() {
return schedulerFactoryBean;
}
public void setSchedulerFactoryBean(
SchedulerFactoryBean schedulerFactoryBean) {
this.schedulerFactoryBean = schedulerFactoryBean;
}
这是applicationContext.xml
<bean id="collectorTicketServiceImplJob"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="collectorTicketServiceImpl" />
<property name="targetMethod" value="ExtractTicketFromMail" />
</bean>
<bean id="collectorTicketServiceImplTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="collectorTicketServiceImplJob" />
<property name="cronExpression" value="0 0/30 * * * ?" />
</bean>
<bean id="collectorTicketServiceImplTriggerSchedular"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="collectorTicketServiceImplTrigger" />
</list>
</property>
</bean>
什么是IHM?用户界面?当您尝试“让用户配置执行时间”时会出现什么问题?你有可以共享的堆栈跟踪吗?或者你能解释一下意外的行为吗?是的,IHM是用户界面,当用户使用表达式时不会传递任何信息,我知道我应该更改应用程序上下文,但我不知道服务是如何每30分钟执行一次的,就像在applicationContext中提到的一样,但我希望每次用户提到时都执行它