spring 定时任务?
一、什么是定时任务?
我们在项目中遇到的需求: 需要定时送异步请求。
二、怎么实现?
2.1 mvc中启用定时任务。
- <?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:aop="http://www.springframework.org/schema/aop"
- 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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">
- <!--spring mvc的配置文件-->
- <!--开启mvc的注解-->
- <mvc:annotation-driven conversion-service="conversionService" >
- <!--配置转换器 转换日期的格式。-->
- <mvc:message-converters>
- <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
- <property name="objectMapper">
- <bean class="com.fasterxml.jackson.databind.ObjectMapper">
- <property name="dateFormat">
- <bean class="java.text.SimpleDateFormat">
- <constructor-arg type="java.lang.String" value="yyyy-MM-dd"/>
- </bean>
- </property>
- </bean>
- </property>
- </bean>
- </mvc:message-converters>
- </mvc:annotation-driven>
- <!--配置日期转换器-->
- <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
- <property name="converters">
- <set>
- <bean class="com.aaa.controller.DateConverter"/>
- </set>
- </property>
- </bean>
- <mvc:default-servlet-handler/>
- <!--扫描器:扫描控制器的注解-->
- <context:component-scan base-package="com.aaa.controller"/>
- <!--4.静态资源注解-->
- <mvc:default-servlet-handler/>
- <!--<mvc:resource mapping="/static/**" location="/static/"/>-->
- <!--3.视图解析器:进行视图解析
- prefix+ 视图名字+suffix
- -->
- <!--5.文件上传的解析器 可以设置相关的属性。-->
- <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
- <property name="defaultEncoding" value="utf-8"/>
- <!--文件上传的大小:单位:字节-->
- <property name="maxUploadSize" value="#{10*1024*1024}"/>
- </bean>
- <!--<!– 异常处理 1. 配置解析器 –>-->
- <!--<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">-->
- <!--<!–1.1默认的错误视图 发生异常时, 跳转到的页面–>-->
- <!--<property name="defaultErrorView" value="error"/>-->
- <!--<!–1.2 异常的属性 捕获到的错误信息。–>-->
- <!--<property name="exceptionAttribute" value="ex"/>-->
- <!--<!–1.3exceptionMappings –>-->
- <!--<property name="exceptionMappings">-->
- <!--<props>-->
- <!--<prop key="异常类型1">-->
- <!--error1-->
- <!--</prop>-->
- <!--<prop key="异常类型2">-->
- <!--error2-->
- <!--</prop>-->
- <!--</props>-->
- <!--</property>-->
- <!--</bean>-->
- <!--6. 配置一个拦截器 -->
- <mvc:interceptors>
- <!--<mvc:interceptor>-->
- <!--<!– 拦截的路径 –>-->
- <!--<mvc:mapping path="/**"/>-->
- <!--<!– 配置拦截器的bean –>-->
- <!--<!– 放行路径 –>-->
- <!--<mvc:exclude-mapping path="/user/login"/>-->
- <!--<bean class="com.aaa.interceptors.MyIntercept"/>-->
- <!--</mvc:interceptor>-->
- <mvc:interceptor>
- <mvc:mapping path="/**"/>
- <bean class="com.aaa.interceptors.Demo02"/>
- </mvc:interceptor>
- </mvc:interceptors>
- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
- <property name="prefix" value="/"/> <!--视图前缀-->
- <property name="suffix" value=".jsp"/> <!--视图后缀-->
- </bean>
- <!--授权 -->
- <aop:config ></aop:config>
- <!--启用定时任务。 导包 spring frame word. org/schema/task-->
- <task:annotation-driven></task:annotation-driven>
- </beans>
2.2 控制层中创建SchController
- package com.aaa.controller;
- import org.springframework.scheduling.annotation.Scheduled;
- import org.springframework.stereotype.Controller;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- /*
- * 定时任务?
- 需求:
- 1.定时发送异步请求
- 2.使用java计时器,自启动的servlet中,线程(Thread,Thread sleep)
- 使用 Schedule组件:
- 1.配置注解。
- 1.1 mvc中 启用定时任务。
- 1.2 导包 【spring frame word. org/schema/task】
- 1.3 创建控制器 加入 schedule的注解。
- 1.4 秒分时日月年。 / 代表 每的意思
- “0/5 * * * * *” 就是每五秒执行一次。
- *
- * */
- @Controller
- public class SchController {
- @Scheduled(cron = "0/3 * * * * ?")
- public void task1(){
- //日期格式的转换。
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
- Date date = new Date();
- String nowTime = sdf.format(date);
- System.out.println("每三秒执行一次, 你好世界!"+nowTime);
- }
- }
2.3 属性说明。
2.4 字符含义
2.5 演示
spring 定时任务?的更多相关文章
- 摆脱Spring 定时任务的@Scheduled cron表达式的困扰
一.背景 最近因为需要,需要适用Spring的task定时任务进行跑定时任务,以前也接触过,但是因为懒没有好好地理解@Scheduled的cron表达式,这次便对它做了一个全方位的了解和任务,记录下来 ...
- spring定时任务注解@Scheduled的记录
spring 定时任务@Scheduled 转自https://www.cnblogs.com/0201zcr/p/5995779.html 1.配置文件 <?xml version=" ...
- spring定时任务(@Scheduled注解)
(一)在xml里加入task的命名空间 xmlns:task="http://www.springframework.org/schema/task" http://www.spr ...
- Spring3.0.6定时任务task:scheduled
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- Spring 定时任务之 @Scheduled cron表达式
一个基于Spring boot的一个demo: Java配置中开户对Scheduled的支持 import org.springframework.context.annotation.Configu ...
- spring定时任务(@Scheduled注解)cron表达式详解
cron表达式详解: 一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素. 按顺序依次为 秒(~) 分钟(~) 小时(~) 天(~) 月(~) 星期(~ =SUN 或 SUN,MON,TU ...
- java中实现定时任务 task 或quartz
转载大神的 https://www.cnblogs.com/hafiz/p/6159106.html https://www.cnblogs.com/luchangyou/p/6856725.html ...
- spring定时任务详解(@Scheduled注解)( 转 李秀才的博客 )
在springMVC里使用spring的定时任务非常的简单,如下: (一)在xml里加入task的命名空间 xmlns:task="http://www.springframework.or ...
- spring定时任务轮询(spring Task)
定时任务轮询比如任务自服务器启动就开始运行,并且每隔5秒执行一次. 以下用spring注解配置定时任务.1.添加相应的schema xmlns:task=" xsi:schemaLocati ...
- spring计划任务,springMvc计划任务,Spring@Scheduled,spring定时任务
spring计划任务,springMvc计划任务,Spring@Scheduled,spring定时任务 >>>>>>>>>>>> ...
随机推荐
- MyEclipse编写jsp很卡的修改方法 (转载)
原文来源 Post IP : 180.156.210.* 1,改默认编辑模式就可以了.将默认编辑器由"myeclipse visual jsp designer" ...
- Mind the Box: $\ell_1$-APGD for Sparse Adversarial Attacks on Image Classifiers
目录 概 主要内容 Croce F. and Hein M. Mind the box: \(\ell_1\)-APGD for sparse adversarial attacks on image ...
- uniapp蓝牙传输中文乱码问题
问题描述:app接收到蓝牙传出过来的二进制数据,1.app进行arrbuff转成16进制字符串 // ArrayBuffer转16进度字符串示例 function ab2hex(buffer) { c ...
- <数据结构>图的最短路径问题
目录 最短路径问题 Dijstra算法:中介点优化 基本步骤 伪代码 在实现过程中的关键问题 代码实现 邻接矩阵版 邻接表版 时间复杂度:O(VlogV+E) 算法存在的问题:存在负权边时会失效 Be ...
- django中写入数据时给密码加密
方法一.在自定义的form表单中重写save方法: 方法二.使用信号量来实现 1. 在应用的模块下新建signal.py文件 2.编写回调函数,内容如下: 3. 在应用的app.py文件中的ready ...
- java.exe and -classpth or -cp
mydirname=$(dirname $0) java -cp $classes_dir:$lib_dir/*:$config_dir -Doracle.net.wallet_location=${ ...
- 服务限流 -- 自定义注解基于RateLimiter实现接口限流
1. 令牌桶限流算法 令牌桶会以一个恒定的速率向固定容量大小桶中放入令牌,当有浏览来时取走一个或者多个令牌,当发生高并发情况下拿到令牌的执行业务逻辑,没有获取到令牌的就会丢弃获取服务降级处理,提示一个 ...
- UVA 156 Ananagrams (STL multimap & set)
原题链接: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=98&p ...
- AVD模拟器怎么配置上网
转自:http://blog.csdn.net/you_jinjin/article/details/7228303 方法一 首先,Windows下,配置Adroid环境变量(Win7为例) 1.桌面 ...
- 数组内sizeof与strlen的区别
1.数组在内存中是连续存放的,地址呈4个字节递增 2.数组的定义需要初始化,否则输出会已随机值输出 3.strlen()和sizeof()之间无关联:strlen():是求字符串长度的----只能针对 ...