java springmvc 定時器方法執行兩次問題
阿新 • • 發佈:2019-02-01
原因是在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點半執行