Spring Boot任务机制
1、异步任务
为主方法添加@EnableAsync注解开启异步任务:
为异步方法添加Async注解:
2、定时任务
为主方法添加@EnableScheduling。注解开启异步任务:
为异步方法添加@Scheduling注解:
其中的sron参数学习参考有关文档
3、邮箱任务
引入依赖
<!--引入邮箱任务依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-email</artifactId>
</dependency>
配置文件的相关配置
spring.mail.username=xxxxxxx
spring.mail.password=xxxxxxx
spring.mail.host=xxxxxxx
#对应的属性分别是:
#用户名
#授权码
#所用邮箱开启的授权码格式特定的host,可去邮箱设置查找
#例如smtp.qq.com
# smtp.163.com
简单邮件发送
@Autowired
JavaMailSenderImpl mailSender;
@Test
void senderEmail02() {
SimpleMailMessage message = new SimpleMailMessage();
message.setSubject("通知今晚开会");
message.setText("今晚7.00开会");
message.setFrom("xxxxxxx");//发件人
message.setTo("xxxxxxx");//收件人
mailSender.send(message);
}
携带附件的复杂邮件发送
@Autowired
JavaMailSenderImpl mailSender;
@Test
void senderEmail() throws Exception{
MimeMessage mimeMessage = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true);
helper.setSubject("通知今晚开会");
helper.setText("<b>今晚7.00开会</b>",true);
helper.setFrom("xxxxx");//发件人
helper.setTo("xxxxx");//收件人
helper.addAttaxxxxxchment("xxxx",new File("xxxx"));//这里也可传一个流对象
mailSender.send(mimeMessage);
}
*这里注意如果使用163邮箱发送,注意处理554垃圾邮件拦截异常