获取邮箱授权码
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
修改配置文件
修改application.yml配置文件
server:
port: 8088
servlet:
context-path: /sendmail
spring:
mail:
host: smtp.163.com
username: dreamtfssoi@163.com # 发件人邮箱地址
password: JAWTXZEKZBHCJKOO # 授权码
default-encoding: utf-8
启动类
添加
@EnableScheduling
注解
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
@EnableScheduling
@SpringBootApplication
public class SendmailApplication {
public static void main(String[] args) {
SpringApplication.run(SendmailApplication.class, args);
}
}
发送邮件
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class TimeSche {
@Autowired
private JavaMailSender javaMailSender;
private static int count = 0;
@Scheduled(cron = "0/5 * * * * *")
public void sendMail() {
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
simpleMailMessage.setFrom("dreamtfssoi@163.com");
simpleMailMessage.setTo("test@qq.com");
simpleMailMessage.setSubject("first mail");
simpleMailMessage.setText("java send mail");
javaMailSender.send(simpleMailMessage);
count++;
log.info(String.format("已发送%s封邮件",count));
}
}