- Spring Boot2.x集成了mail模块,在pom引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
2、在application.properties中配置文件:
spring.mail.username=123456789@qq.com
spring.mail.password=ultclkvgiwfhicch
spring.mail.host=smtp.qq.com
# qq需要配置ssl
spring.mail.properties.mail.smtp.ssl.enable=true
3、获取授权码:在QQ邮箱中的设置->账户->开启pop3和smtp服务
4、SpringBoot单元测试
@SpringBootTest
class SendmailApplicationTests {
@Autowired
JavaMailSenderImpl javaMailSender;
@Test
void contextLoads() {
//一个简单的发送邮件
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
simpleMailMessage.setSubject("通知-明天XX的生日");//标题
simpleMailMessage.setText("明晚请你大吃一顿");//内容
simpleMailMessage.setTo("123456789@qq.com");//发送给谁
simpleMailMessage.setFrom("234567890@qq.com");//谁发送
javaMailSender.send(simpleMailMessage);
}
@Test
void contextLoads1() throws MessagingException {
邮件设置2:一个复杂的邮件
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage,true);
messageHelper.setSubject("通知-明天XX的生日");
messageHelper.setText("<b style='color:red'>明晚请你大吃一顿</b>",true);//true 支持多文件
发送附件
messageHelper.addAttachment("1.jpg",new File("C:\\Users\\12826\\Desktop\\1.jpg"));
messageHelper.setTo("123456789@qq.com");//发送给谁
messageHelper.setFrom("234567890@qq.com");//谁发送
javaMailSender.send(mimeMessage);
}
}