Spring整合Quartz定时发送邮件
功能描述:刚开始接触Quartz,试着用Quartz整合spring实现每隔一分钟发送一封邮件连续发送10次
核心jar:
邮件发送:commons-email-1.2.jar mail.jar(必须的)
quartz:quartz-all-1.8..jar quartz-all-1.8./lib/下所有jar
spring:spring-context-support.ajr(必须的)
只贴出核心代码:
Email发送:使用apache commons-email跟mail
package com.ssh.commonsemail; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import javax.mail.internet.InternetAddress; import org.apache.commons.mail.SimpleEmail; /**
* 功能描述:此代码主要实现邮件发送功能
* @author coder
*
*/
public class SendSimplEmail { public static void sendMail()throws Exception{
List<InternetAddress> list=new ArrayList<InternetAddress>();
list.add(new InternetAddress("313698683@qq.com"));
list.add(new InternetAddress("184675420@qq.com"));
SimpleEmail email=new SimpleEmail();
email.setFrom("184675420@163.com");
email.setCharset("utf-8");
email.setSentDate(new Date());
email.setSubject("测试Quartz");
email.setHostName("smtp.163.com");
email.setAuthentication("xxxx", "xxxx");
email.setTo(list);
email.setContent("<h1>Hello,把凤姐许配给你,你看咋样?</h1>", "text/html;charset=utf-8");
email.send();
} } 定义调度工作任务:继承自org.springframework.scheduling.quartz.QuartzJobBean次类在spring-context-support.jar中
package com.ssh.quantz; import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean; import com.ssh.commonsemail.SendSimplEmail; /**
* 发送email任务
* @author coder
*
*/
public class SendEmailJob extends QuartzJobBean{ @Override
protected void executeInternal(JobExecutionContext context)
throws JobExecutionException {
try {
//调用邮件发送代码
SendSimplEmail.sendMail();
} catch (Exception e) {
e.printStackTrace();
}
} } spring核心配置文件
<!-- 定义调度工作任务 -->
<bean id="quantzjobBean" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<!-- 实现了org.springframework.scheduling.quartz.QuartzJobBean的JobBean -->
<value>com.ssh.quantz.SendEmailJob</value>
</property>
<!-- 调用业务逻辑 -->
<!--
<property name="jobDataAsMap">
<map>
<entry key="biz">
<ref bean="users"/>
</entry>
</map>
</property>
-->
</bean> <!-- 触发任务条件 -->
<bean id="simpletriggerbean" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="quantzjobBean"></property>
<property name="cronExpression">
<value> ? * *</value> //每天10点47触发
</property> </bean> <!-- 启动调度 -->
<bean id="startQuartz" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="simpletriggerbean"/>
</list>
</property>
</bean>
Spring整合Quartz定时发送邮件的更多相关文章
- spring利用javamail,quartz定时发送邮件 <转>
原文地址:spring利用javamail,quartz定时发送邮件 <转>作者:物是人非 spring提供的定时发送邮件功能,下面是一个简单的例子以供大家参考,首先从spring配置文件 ...
- spring整合quartz并持久化
spring整合quartz有两种方式: 一.常见是使用配置文件,将定时任务保存到内存中 简单示例: <!-- 短信催还提醒任务调度 --> <bean id="overd ...
- Spring整合Quartz定时任务 在集群、分布式系统中的应用(Mysql数据库环境)
Spring整合Quartz定时任务 在集群.分布式系统中的应用(Mysql数据库环境) 转载:http://www.cnblogs.com/jiafuwei/p/6145280.html 单个Q ...
- 使用spring整合Quartz实现—定时器
使用spring整合Quartz实现—定时器(Maven项目做演示) 不基于特定的基类的方法 一,开发环境以及依赖的jar包 Spring 4.2.6.RELEASE Maven 3.3.9 Jdk ...
- 基于spring的quartz定时框架,实现简单的定时任务功能
在项目中,经常会用到定时任务,这就需要使用quartz框架去进行操作. 今天就把我最近做的个人主页项目里面的定时刷新功能分享一下,很简单. 首先需要配置一个配置文件,因为我是基于spring框架的,所 ...
- 初识quartz 并分析 项目中spring整合quartz的配置【原创+转载】
初识quartz 并分析 项目中spring整合quartz的配置[原创+转载]2018年01月29日 12:08:07 守望dfdfdf 阅读数:114 标签: quartz 更多个人分类: 工具 ...
- spring整合quartz框架
spring整合quartz: 网上也有很多教程,好多都是基于配置方式,我们使用当然怎么简单就怎么用,所以这里介绍基于注解方式整合quartz.前提:你需要有一个能运行的web项目. 1.引依赖: & ...
- Spring整合Quartz (cronTrigger和simpleTrigger实现方法)
Spring整合Quartz (cronTrigger和simpleTrigger实现方法) 之前有记录过一次springboot整合Quartz的文章,由于偶尔一次自己使用spring需要整合Qua ...
- 使用Spring整合Quartz轻松完成定时任务
一.背景 上次我们介绍了如何使用Spring Task进行完成定时任务的编写,这次我们使用Spring整合Quartz的方式来再一次实现定时任务的开发,以下奉上开发步骤及注意事项等. 二.开发环境及必 ...
随机推荐
- poj_3977 折半枚举
题目大意 给定N(N<=35)个数字,每个数字都<= 2^15. 其中一个或多个数字加和可以得到s,求出s的绝对值的最小值,并给出当s取绝对值最小值时,需要加和的数字的个数. 题目分析 需 ...
- 学习C++服务端一:MySql与C++
mysql学习: http://www.cnblogs.com/cy163/archive/2008/10/16/1312277.html http://developer.51cto.com/art ...
- Docker 使用指南 (五)—— Dockerfile 详解
版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/97 来源:腾云阁 https://www.qclou ...
- 关于线上js报错问题的思考
1.有没有可能对线上报错进行实时监控,只要线上报错出现就会以邮件的形式发出来. 2.有没有可能将每个模块和开发者联系起来,只要报错就直接报给开发者
- 【BZOJ4418】[Shoi2013]扇形面积并 扫描线+线段树
[BZOJ4418][Shoi2013]扇形面积并 Description 给定N个同心的扇形,求有多少面积,被至少K个扇形所覆盖. Input 第一行是三个整数n,m,k.n代表同心扇形的个数,m用 ...
- 【BZOJ1030】[JSOI2007]文本生成器 AC自动机+动态规划
[BZOJ1030][JSOI2007]文本生成器 Description JSOI交给队员ZYX一个任务,编制一个称之为“文本生成器”的电脑软件:该软件的使用者是一些低幼人群,他们现在使用的是GW文 ...
- eclipse 安装Subversion1.82(SVN)插件
Eclipse下SVN插件的安装,可以选择在线安装和离线安装两种方式: 2.(可选①)使用本地安装包安装插件 --填写插件名(可随意取名) --插件来源地址(①安装包,②使用网址) →Archie→选 ...
- CentOS 目录结构详解
linux 目录结构 linux目录树 /: 根目录,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区中/bin:/usr/bin: ...
- jenkins之升级
首先查看系统war包放置的位置 rpm -ql jenkins 下载一个war包 下载地址 https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.61/ ...
- 后缀树 & 后缀数组
后缀树: 字符串匹配算法一般都分为两个步骤,一预处理,二匹配. KMP和AC自动机都是对模式串进行预处理,后缀树和后缀数组则是对文本串进行预处理. 后缀树的性质: 存储所有 n(n-1)/2 个后缀需 ...