Spring整合Quartz定时发送邮件

简介:
功能描述:刚开始接触Quartz,试着用Quartz整合spring实现每隔一分钟发送一封邮件连续发送10次
        核心jar:
                    邮件发送:commons-email-1.2.jar mail.jar(必须的)
                    quartz:quartz-all-1.8.3.jar quartz-all-1.8.3/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>0 47 10 ? * *</value>    //每天10点47触发
         </property>
         
     </bean>
     
     <!-- 启动调度 -->
     <bean id="startQuartz" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
         <property name="triggers">
             <list>
                 <ref bean="simpletriggerbean"/>
             </list>
         </property>
     </bean>
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/3777409.html,如需转载请自行联系原作者

相关文章
|
3月前
|
Java 调度 开发者
spring的@Scheduled()有几种定时模式?
【10月更文挑战第12天】spring的@Scheduled()有几种定时模式?
156 1
|
5月前
|
Java 关系型数据库 MySQL
SpringBoot 集成 Quartz + MySQL
SpringBoot 集成 Quartz + MySQL
137 1
|
6月前
|
XML Java Linux
Spring Task 定时任务没有定时执行是为什么?
Spring Task 定时任务没有定时执行是为什么?
90 2
|
7月前
|
Java 数据库连接 数据库
实现Spring Boot与MyBatis结合进行数据库历史数据的定时迁移
实现Spring Boot与MyBatis结合进行数据库历史数据的定时迁移
245 2
|
7月前
|
SQL API 调度
Springboot2.4.5集成Quartz实现动态任务数据持久化-不怕重启服务
Springboot2.4.5集成Quartz实现动态任务数据持久化-不怕重启服务
312 0
|
7月前
|
Java API 调度
Web后端Javaee企业级开发之定时任务 Springboot整合任务框架Quartz和Task详解
Web后端Javaee企业级开发之定时任务 Springboot整合任务框架Quartz和Task详解
98 0
|
8月前
|
存储 数据可视化 安全
Java全套智慧校园系统源码springboot+elmentui +Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术
智慧校园指的是以物联网为基础的智慧化的校园工作、学习和生活一体化环境,这个一体化环境以各种应用服务系统为载体,将教学、科研、管理和校园生活进行充分融合。无处不在的网络学习、融合创新的网络科研、透明高效的校务治理、丰富多彩的校园文化、方便周到的校园生活。简而言之,“要做一个安全、稳定、环保、节能的校园。
154 6
|
8月前
|
Java Spring 容器
SpringBoot 使用Quartz执行定时任务对象时无法注入Bean问题
SpringBoot 使用Quartz执行定时任务对象时无法注入Bean问题
310 1
|
8月前
|
存储 NoSQL Java
【十】springboot整合quartz实现定时任务优化
【十】springboot整合quartz实现定时任务优化
129 0
|
8月前
|
SQL Java 调度
SpringBoot集成quartz定时任务trigger_state状态ERROR解决办法
SpringBoot集成quartz定时任务trigger_state状态ERROR解决办法