>Java >java지도 시간 >springboot가 자동 이메일 전송 작업을 구현하는 방법

springboot가 자동 이메일 전송 작업을 구현하는 방법

王林
王林앞으로
2023-05-14 18:46:121605검색

1.导入jar包

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
    <version>2.5.2</version>
</dependency>

2.配置文件

获取qq邮箱的POP3/SMTP服务,获取加密的密码,并编写springboot的配置文件

spring.mail.username=2080038188@qq.com #QQ号不是我的哦
spring.mail.password=gzcmhxxybgvbcjil #这里就是加密的密码
spring.mail.host=smtp.qq.com
spring.mail.properties.mail.smtp.ssl.enable=true #这一步是开启加密验证

3.测试

在测试类中进行测试

@SpringBootTest
class Sprintboot09TestApplicationTests {

    @Autowired
    JavaMailSenderImpl mailSender;
    @Test
    void contextLoads() {
        SimpleMailMessage mailMessage = new SimpleMailMessage();
        mailMessage.setSubject("你好呀");
        mailMessage.setText("谢谢你");
        mailMessage.setTo("2080038188@qq.com");
        mailMessage.setFrom("2080038188@qq.com");
        mailSender.send(mailMessage);
    }

}

然后就发送成功了,你的qq邮箱就会收到你自己发送的信息,这里是非常有成就感的哦!!!

重点:在我测试中一直有bug,找了近半个小时才找到,结果就是我们springboot配置文件多打了一个空格,肉眼都无法看到,这种错误,属实找的好辛苦,一度怀疑是jar包版本或qq邮箱的问题,结果是多虑了。今后一定要注意springboot配置文件的空格问题!!!

复杂的邮件发送

@Test
void contextLoads2() throws MessagingException {
    //一个复杂的邮件
    MimeMessage mimeMessage = mailSender.createMimeMessage();
    //组装
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
    //正文
    helper.setSubject("小狂神你好呀~plus");
    helper.setText("<p style=&#39;color:red&#39;>谢谢你的狂神说java系列课程~</P>",true);
    //附件
    helper.addAttachment("1.jpg",new File("C:\\Users\\86187\\Desktop\\1.jpg"));
    helper.setTo("2080038187@qq.com");
    helper.setFrom("2080038187@qq.com");
    mailSender.send(mimeMessage);
}

위 내용은 springboot가 자동 이메일 전송 작업을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제