1. 程式人生 > >java springmvc 定時器方法執行兩次問題

java springmvc 定時器方法執行兩次問題

原因是在web.xml要例項化兩次分別是<servlet></servlet>和<context-param></context-param>裡,所以要將定時器對任務,單獨寫到一個xml檔案裡,配置如下

<context-param>
	  <param-name>contextConfigLocation</param-name>
	  <param-value>classpath*:config/spring/spring-*.xml,classpath*:config/spring/task-mvc.xml</param-value>
	</context-param>


同時定時器的xml程式碼如下

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:task="http://www.springframework.org/schema/task" 
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans.xsd
	http://www.springframework.org/schema/context
	http://www.springframework.org/schema/context/spring-context-3.2.xsd
	http://www.springframework.org/schema/task
	http://www.springframework.org/schema/task/spring-task-3.2.xsd 
	http://www.springframework.org/schema/mvc 
	http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
	
	<!-- 註解掃描包 -->
	<context:component-scan base-package="com.xh"/>
	<!-- 開啟註解 -->
	<mvc:annotation-driven/>
	
	<task:annotation-driven/> <!-- 定時器開關-->  
  
    <bean id="myTaskXml" class="com.xh.tools.MyTaskXml"></bean>  
  
    <task:scheduled-tasks>  
        <!--  
            這裡表示的是每隔五秒執行一次  
        -->  
        <task:scheduled ref="myTaskXml" method="show" cron="10 30 14 * * *" />   
    </task:scheduled-tasks>  
</beans>


代表下午每天2點半執行