问题描述
在运行webapp的时候发现作业调度的方法被两个调度执行了但在代码和配置上都只配置了一个调度在applicationContent.xml做如下配置(里面除了如下内容只剩下对dtd引用的内容并无其他的)<beanid="taskTest"class="TaskTest"></bean><beanid="jobManagerDetail"class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><propertyname="targetObject"><refbean="taskTest"/></property><propertyname="targetMethod"><value>executeInternal</value></property></bean><beanid="jobSendSMSDoTime"class="org.springframework.scheduling.quartz.CronTriggerBean"><propertyname="jobDetail"><refbean="jobManagerDetail"/></property><propertyname="cronExpression"><!--每2秒都调度一次--><value>0/2****?</value></property></bean><beanclass="org.springframework.scheduling.quartz.SchedulerFactoryBean"><propertyname="triggers"><list><refbean="jobSendSMSDoTime"/></list></property></bean>而被调度的作业实体类代码如下:publicclassTaskTest{publicvoidexecuteInternal(){System.out.println(this);}}在tomcat上打印的结果是:TaskTest@13d76d5TaskTest@777255TaskTest@777255TaskTest@13d76d5TaskTest@13d76d5TaskTest@777255看输入的结果好像是有两个TaskTest在同时执行但我要是用console方式读取spring的配置文件执行publicclassTestMain{publicstaticvoidmain(String[]args){newClassPathXmlApplicationContext("applicationContext.xml");}}结果如下:TaskTest@567tr5TaskTest@567tr5TaskTest@567tr5TaskTest@567tr5TaskTest@567tr5TaskTest@567tr5为什么会这样呢第一次做这个不是很明白哪里错了请高手指点