- 浏览: 189398 次
- 性别:
- 来自: 南京
文章分类
最新评论
本篇文章简单介绍一个Spring的schedule小例子。此定时任务放在一个mvc工程里面,配置以及代码都可以参考http://fengyilin.iteye.com/admin/blogs/2338830这篇文章,下面主要把关于schedule的内容记录下来。
变更点:
1.在servlet-context.xml文件中引入schedule的配置文件
在此文件的最后一行引入了schedules.xml
2.追加schedules.xml文件
3.追加具体执行任务的类
本示例只是简单的做了测试,定时任务每2秒钟重复执行一次,当然spring Scheduled通过cron表达式支持更加灵活的调度配置。
4.追加依赖jar包aopalliance-1.0.jar
最终的工程目录
完整的工程代码请参考附件
变更点:
1.在servlet-context.xml文件中引入schedule的配置文件
<?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocation=" http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure --> <!-- Enables the Spring MVC @Controller programming model --> <annotation-driven> </annotation-driven> <!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources/ directory --> <resources mapping="/resources/**" location="/resources/" /> <!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory --> <!-- <beans:bean --> <!-- class="org.springframework.web.servlet.view.InternalResourceViewResolver"> --> <!-- <beans:property name="prefix" value="/WEB-INF/views/" /> --> <!-- <beans:property name="suffix" value=".jsp" /> --> <!-- </beans:bean> --> <beans:bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver"> <beans:property name="prefix" value="/WEB-INF/views/" /> <beans:property name="suffix" value=".html" /> <!-- Template cache is true by default. Set to false if you want --> <!-- templates to be automatically updated when modified. --> <beans:property name="cacheable" value="false" /> </beans:bean> <!-- SpringTemplateEngine automatically applies SpringStandardDialect and --> <!-- enables Spring's own MessageSource message resolution mechanisms. --> <beans:bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine"> <beans:property name="templateResolver" ref="templateResolver" /> </beans:bean> <beans:bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver"> <beans:property name="templateEngine" ref="templateEngine" /> </beans:bean> <!-- Imports user-defined @Controller beans that process client requests --> <beans:import resource="controllers.xml" /> <!-- Imports user-defined @Scheduled beans that process schedule tasks --> <beans:import resource="schedules.xml" /> </beans:beans>
在此文件的最后一行引入了schedules.xml
2.追加schedules.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:task="http://www.springframework.org/schema/task" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!--扫描schedule类package--> <context:component-scan base-package="test.spring.schedule"/> <!--使用spring scheduled的核心配置,启动scheduled注解功能--> <task:annotation-driven /> </beans>
3.追加具体执行任务的类
/** * */ package test.spring.schedule; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; /** * @author dwxx-116 * */ @Component public class MySchedule { private static final Log logger = LogFactory.getLog(MySchedule.class); @Scheduled(fixedRate=2000) public void processQueues() { logger.info("start to processQueues,time:" + System.currentTimeMillis()); } }
本示例只是简单的做了测试,定时任务每2秒钟重复执行一次,当然spring Scheduled通过cron表达式支持更加灵活的调度配置。
4.追加依赖jar包aopalliance-1.0.jar
最终的工程目录
完整的工程代码请参考附件
发表评论
-
spring-session-redis 实现原理
2019-03-20 19:24 15631.实现原理 1.1 得益于HttpSession和HttpS ... -
spring-security
2018-01-08 09:05 0FilterSecurityInterceptor是一个fil ... -
Spring cloud config利用gitlab webhook自动刷新
2017-02-10 20:14 27一、简介 Spring Cloud Config 提供serv ... -
Spring @ConfigurationProperties
2017-02-10 20:27 7801.配置文件类 package chengf.spring ... -
Spring 利用@Value注入properties文件属性
2017-01-21 09:05 1399本编文章是对Spring利用@Value来直接注入proper ... -
Spring ws 小示例
2016-12-10 15:43 4238一、简介 Spring Web Service 致力于开发 ... -
Spring4+WebSocket小示例
2016-11-27 11:09 2530一、简介 WebSocket ... -
Spring+thymeleaf小示例
2016-11-18 14:01 1007之前一篇文章写了个简单的Spring mvc例子,界面表示层用 ... -
SpringMVC小示例
2016-11-16 20:23 651***因为在内网环境下, ...
相关推荐
spring+springMVC+mybatis+quartz动态定时任务
Spring + quartz 定时任务修改定时时间不重启服务
springmvc+spring+mysql+maven定时任务
spring+quartz定时小例子,架包+文档 我自己整理的
在spring+hibernate的框架中定时操作数据库,主要是拿到sessionFactory,不会出现no session 和transaction no-bound等问题,由sessionFactory完成对数据的操作,有些包是没有用的,有兴趣的可以自己删除掉
11-Spring+Quartz定时任务最简集群版1
Spring+Mybatis+Druid+POI示例整合demo
Spring2.5+Quartz定时任务简单例子web工程 myeclipse 项目开发的,可直接导入运行
利用quartz动态操作定时任务,所有配置信息扔到数据库合理管理,同时把运行日志自动添加数据库表中。
SpringMvc+Spring+Mybatis+Maven整合示例源码 SpringMvc、Spring、Mybatis、Maven、java整合示例源码
springmvc+spring+mybatis+maven示例
SpringMvc+Spring+Mybatis+Maven整合示例testmybatis源码
SpringMvc+Spring+Mybatis+Maven整合示例
Spring+spring MVC+MyBatis示例程序,maven构建,程序演示了增、删、改、查、分页、单元测试等有代表性的操作,可供初学者借鉴。
一个简单地基于spring+springmvc+hibernate框架的web开发,帮助搭建项目。仅供参考。
JSF+Spring+Ibatis示例,对学习JAVA企业应用开发有巨大的帮助!
Quartz学习文档 Spring + Quartz配置详细实例 jar包 Quartz时间格式设置