spring定时任务

导依赖

	<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.3</version>
</dependency>

配置定时任务类

	package com.atguigu.scw.portal.service;

	import org.springframework.stereotype.Service;

	@Service
public class ExampleJob { public void hello() {
System.out.println("定时任务触发===========>");
} }

配置定时任务

	<?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"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
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-4.3.xsd"> <!-- <bean id="exampleJob"
class="com.atguigu.scw.portal.service.ExampleJob"></bean> --> <!--配置定时任务触发类和方法 -->
<bean id="jobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="exampleJob" />
<property name="targetMethod" value="hello" />
</bean> <!--配置触发器,指定何时触发 -->
<bean id="cronTrigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="jobDetail" />
<!-- run every morning at 6 AM -->
<property name="cronExpression" value="*/5 * * * * ?" />
</bean> <!--配置定时任务调用哪一个触发器 -->
<bean
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger" />
</list>
</property>
</bean>
</beans>

cron表达式使用

每隔5秒执行一次:*/5 * * * * ?
每隔1分钟执行一次:0 */1 * * * ?
每天23点执行一次:0 0 23 * * ?
每天凌晨1点执行一次:0 0 1 * * ?
每月1号凌晨1点执行一次:0 0 1 1 * ?
每月最后一天23点执行一次:0 0 23 L * ?
每周星期天凌晨1点实行一次:0 0 1 ? * L
在26分、29分、33分执行一次:0 26,29,33 * * * ?
每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?

参考

https://docs.spring.io/spring/docs/4.0.0.RELEASE/spring-framework-reference/htmlsingle/#scheduling-quartz

文件上传进度条

ajax异步提交表单$("#subBtn").on('click', function() { return false}是js对象的机制

<button type="submit" id='subBtn' class="btn btn-default">Submit</button>点击按钮直接提交是浏览器的机制

文件上传

表单直接提交action='${ctp}/member/upload' method='post' enctype="multipart/form-data"

	<form action='${ctp}/member/upload' method='post' enctype="multipart/form-data">
<div class="form-group">
<input type="file" class="form-control" id="file" name='file'>
</div>
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="60"
aria-valuemin="0" aria-valuemax="100" style="width: 60%;">
60%</div>
</div>
<button type="submit" id='subBtn' class="btn btn-default">Submit</button>
</form>

ajax提交type : "post",contentType : false,processData : false

进度条:获取myXhr = $.ajaxSettings.xhr()对象并返回

	<form id='submitForm'>
<div class="form-group">
<input type="file" class="form-control" id="file" name='file'>
</div>
<div class="progress" style='display: none;'>
<div class="progress-bar" role="progressbar" aria-valuenow="0"
aria-valuemin="0" aria-valuemax="100" style="width: 0%;">0%</div>
</div>
<button type="submit" id='subBtn' class="btn btn-default">Submit</button>
</form> <script type="text/javascript">
$("#subBtn").on('click', function() {
var fd = new FormData($("#submitForm")[0]);
$.ajax({
url : "${ctp}/member/upload",
data : fd,
type : "post",
contentType : false,
processData : false,
//获取ajaxSettings中的xhr对象,为它的upload属性绑定progress事件的处理函数
xhr : function() {
myXhr = $.ajaxSettings.xhr()
//检查upload属性是否存在
if (myXhr.upload) {
//绑定progress事件的回调函数
myXhr.upload.addEventListener('progress',
progressHandlingFunction, false)
}
//xhr对象返回给jQuery使用
return myXhr;
},
success : function(result) {
console.log("result==========>", result)
},
error : function(e) {
console.log('e=========>', e)
}
})
return false
})
var progressHandlingFunction = function(e) {
var curr = e.loaded
var total = e.total
process = curr / total * 100
console.log('上传进度============>', process)
$('.progress').attr('style', 'display:show;')
$('.progress-bar').html(process + '%')
$('.progress-bar').attr('style', 'width:' + process + '%;') }
</script>

图片预览

	$("#ad_file_input").on('change', function(event) {
$(this).empty()
$(this).parent('.form-group').next('.form-group').find('.imgdiv').empty() fileList = event.currentTarget.files
log('fileList==============>', fileList) var URL = window.URL || window.webkitURL
var imgURL
//遍历上传的文件进行显示
$.each(fileList, function (index, item) {
//创建一个临时的url地址
imgURL = URL.createObjectURL(item)
log('this=========>',this)
log('item==========>',item)
$('#ad_file_input').parent(".form-group").next(".form-group").find(".imgdiv").append("<img src='"+imgURL+"' style='width:200px;height:220px;'/>").append('<p>'+item.name+'<p>')
})
})

spring定时任务-文件上传进度条的更多相关文章

  1. HTML5矢量实现文件上传进度条

    在HTML中,在文件上传的过程中,很多情况都是没有任何的提示,这在体验上很不好,用户都不知道到时有没有在上传.上传成功了没有,所以今天给大家介绍的内容是通过HT for Web矢量来实现HTML5文件 ...

  2. 基于HT for Web矢量实现HTML5文件上传进度条

    在HTML中,在文件上传的过程中,很多情况都是没有任何的提示,这在体验上很不好,用户都不知道到时有没有在上传.上传成功了没有,所以今天给大家介绍的内容是通过HT for Web矢量来实现HTML5文件 ...

  3. PHP中使用Session配合Javascript实现文件上传进度条功能

    Web应用中常需要提供文件上传的功能.典型的场景包括用户头像上传.相册图片上传等.当需要上传的文件比较大的时候,提供一个显示上传进度的进度条就很有必要了. 在PHP .4以前,实现这样的进度条并不容易 ...

  4. iOS_文件上传进度条的实现思路-AFNettworking

    iOS_文件上传进度条的实现思路-AFNettworking //要上传的文件名,在这里我使用当前日期做为文件的名称 NSString * fileName =[NSString stringWith ...

  5. asp.net文件上传进度条研究

    文章:asp.net 文件上传进度条实现代码

  6. Layui多文件上传进度条

    Layui原生upload模块不支持文件上传进度条显示,百度,谷歌找了一下不太适用.后面找到一个别人修改好的JS,替换上去,修改一下页面显示即可使用,一下是部分代码 HTML: <div cla ...

  7. 利用Bootstrap简单实现一个文件上传进度条

    © 版权声明:本文为博主原创文章,转载请注明出处 说明: 1. 使用commons-fileupload.jar实现文件上传及进度监听 2. 使用bootstrap的进度条进行页面显示 3. 因为进度 ...

  8. vue多文件上传进度条 进度不更新问题

    转自 hhttp://www.cnblogs.com/muge10/p/6767493.html 感谢这位兄弟的文章,之前因为这个问题 ,我连续在sgmentflow上提问过多次,完全没人能回答.谢谢 ...

  9. layui文件上传进度条(模拟)

    1.修改上传组件js(没测) https://blog.csdn.net/weixin_42457316/article/details/81017471 https://www.cnblogs.co ...

随机推荐

  1. Docker安装Skywalking APM分布式追踪系统

    环境介绍 本文使用虚拟机unbutu18+docker.本unbutu18系统IP地址为:192.168.150.134 大家在使用时记得将此地址换成自己的实际地址. docker的安装可参考:htt ...

  2. Java线程之线程简介

    Java线程之线程简介 一.何谓线程 明为跟踪处理流程,实为跟踪线程 阅读程序时,我们会按处理流程来阅读. 首先执行这条语句 ↓ 然后执行这条语句 ↓ 接着再执行这条语句…… 我们就是按照上面这样的流 ...

  3. PHP识别简单的图片上面的数字(可扩展)

    1.场景 最近在学习图片处理,就是特意把数字生成一个图片,然后再用程序去识别图片的数字.这就有了一下的学习过程. 2.原理分析 2.1 首先是将图片像素化,二值化,然后和字模去对比(需要相对于配置字模 ...

  4. js的真值与假值

    假值 结果为 false 的值称为 假值.例如,空字符串 "" 为假值,因为在布尔表达式中,"" 等于 false. false == 0返回:true fal ...

  5. Oracle - 自治事务autonomous transaction

    自治事务 - autonomous transaction 在Oracle数据库中,有时候我们会希望记录一个过程或者函数的运行日志,不管正常运行结束还是触发异常结束,都要记录. 正常结束的没有问题,但 ...

  6. 2019nc#5

    题号 标题 已通过代码 题解/讨论 通过率 团队的状态 A digits 2 点击查看 1017/2384  通过 B generator 1 点击查看 567/3692  通过 C generato ...

  7. codeforces 161 D. Distance in Tree(树形dp)

    题目链接:http://codeforces.com/problemset/problem/161/D 题意:给出一个树,问树上点到点的距离为k的一共有几个. 一道简单的树形dp,算是一个基础题. 设 ...

  8. CF996B World Cup 思维 第十四 *

    World Cup time limit per test 1 second memory limit per test 256 megabytes input standard input outp ...

  9. WebStorm调节控制台字体

    File --> Settings --> Editor --> Colors & Fonts --> Console Font

  10. erlang加密模块crypto的一些使用

    crypto 模块描述:该模块提供一系列加密函数: 散列函数-安全散列标准,MD5报文摘要算法(RFC 1321)和MD4报文摘要算法(RFC 1320); Hmac函数-散列消息认证(RFC 210 ...