• 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>
  • 相关阅读:
    一位年轻女董事长的忠告:不想穷下去就请看
    Ajax拓展02
    Ajax拓展
    Ajax概念及基础
    PHP了解01
    CSS3新增功能03
    CSS3新增功能02
    CSS3新增功能01
    html5介绍
    jQuery学习03
  • 原文地址:https://www.cnblogs.com/yaowen/p/3777409.html
Copyright © 2020-2023  润新知