spring的定时器

来源:互联网 发布:c语言编写简单计算器 编辑:程序博客网 时间:2024/06/06 07:23

之前用了spring+quartz 配置的时候需要每次加一个任务或触发器 都需要在xml文件中去添加  这里面 直接注解搞定

导入的jar包


1、spring 文件(application.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:jdbc="http://www.springframework.org/schema/jdbc"      xmlns:jee="http://www.springframework.org/schema/jee"     xmlns:tx="http://www.springframework.org/schema/tx"    xmlns:aop="http://www.springframework.org/schema/aop"     xmlns:mvc="http://www.springframework.org/schema/mvc"    xmlns:util="http://www.springframework.org/schema/util"    xmlns:jpa="http://www.springframework.org/schema/data/jpa"    xmlns:task="http://www.springframework.org/schema/task"      xsi:schemaLocation="        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd        http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd        http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd        http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd    http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.2.xsd">    <!-- 包扫描 -->    <context:component-scan base-package="com.sq"></context:component-scan>      <!-- 注解 -->    <task:annotation-driven scheduler="myScheduler"/>    <task:scheduler id="myScheduler" pool-size="5"/></beans>
在这里面 需要额外注意 引入
xmlns:task="http://www.springframework.org/schema/task"
以及
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.2.xsd

2、web.xml文件

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list>        <!--加载 applicationcontext.xml文件-->  <!-- 上下文参数:最ervletContext对象中 -->  <context-param>  <param-name>contextConfigLocation</param-name>  <param-value>/WEB-INF/applicationContext.xml</param-value>  </context-param>  <!-- 配置Spring容器对应的监听器,用于在项目启动时加载Spring配置文件 -->  <listener>  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  </listener></web-app>

3、写一个类测试执行下

package com.sq.test;import java.util.Date;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Controller;@Controllerpublic class tst  {@Scheduled(cron="0/5 * * * * ?")public void execute(){System.out.println("当前执行的时间:"+new Date());}}

这里面只需要加一个
@Scheduled(cron="0/5 * * * * ?")

省去之前在xml中的 配置

原创粉丝点击