首页 > 代码库 > Spring整合Quartz定时发送邮件
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>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。