详细参考上一篇文章 :SpringBoot邮件发送功能
更新:2021-2-2 17:13:38
定时邮件
SpringBoot 整合Scheduled 实现定时发送邮件
- 启动类
启动类上添加定时启动注解 @EnableScheduling
@EnableScheduling
@SpringBootApplication
public class BiaoBaiApp {
public static void main(String[] args) {
SpringApplication.run(BiaoBaiApp.class,args);
}
配置文件参考上一篇文章
编写发送邮件的类
@Component
public class SendMessage {
@Autowired
private JavaMailSender mailSender;
@Value("${spring.mail.username}")
private String from;
@Value("${she.mail}")
private String[] sheMail;
/**
*
* @param subject 邮件标题
* @param message 邮件内容
*/
public void sendMessage(String subject, String message) {
try {
MimeMessage mimeMessage = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
//发送者邮件邮箱
helper.setFrom(sender);
//收邮件者邮箱
helper.setTo(sheMail);
//发件主题
helper.setSubject(subject);
//发件内容
helper.setText(message);
//发送邮件
mailSender.send(helper.getMimeMessage());
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
编写定时任务
@Component
public class MyScheduled {
@Autowired
private SendMessage sendMessage;
/*定时执行任务方法 每天5点20执行该任务*/
@Scheduled(cron ="0 20 17 * * *")
public void dsrw(){
String message = sendMessage.getOneS();
sendMessage.sendMessage("来自zukxu的消息!❤",message);
}
}
将程序运行在服务器上即可实现定时发送邮件的任务了