SpringBoot 邮件任务

本文介绍了如何在SpringBoot应用中使用spring-boot-starter-mail进行邮件发送。首先需要在pom.xml添加依赖,接着配置邮件属性如SMTP服务器、用户名和授权码。在JavaMailSender的帮助下,可以实现邮件发送。注意,可能出现的错误包括密码错误、发送人不一致、安全连接未开启以及接收邮箱无效,解决方法包括检查授权码、从配置中核对发送人、开启SMTP安全连接和确保接收邮箱有效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SpringBoot 邮件任务(spring-boot-starter-mail

1,Spring Boot 邮件发送需要在pom文件中引入spring-boot-starter-mail

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

2,在application.properties中配置邮件属性,邮件属性内容可在MailProperties类中查找

#发送邮件服务器,可以在邮箱的“POP3/SMTP服务”查看
spring.mail.host=smtp.qq.com
#邮箱密码经过加密的,需要在邮箱中发送短信获取。
spring.mail.password=mfcozdmaumowndwrr
#邮箱
spring.mail.username=123@qq.com
#出现530错误需开启
#spring.mail.properties.mail.smtp.ssl.enable=true

3,利用自动装配JavaMailSender发送邮件

@RunWith(SpringRunner.class)
@SpringBootTest
public class ThymeleaftestApplicationTests {
    @Autowired
    JavaMailSenderImpl  javaMailSender;
    @Test
    public void contextLoads() {
        //简单消息邮件发送
        SimpleMailMessage mailMessages =new SimpleMailMessage();
        mailMessages.setFrom("123@qq.com");//发送人邮箱
        mailMessages.setTo("456g@163.com");//接收人邮箱
        mailMessages.setSubject("我是邮箱的主题:测试发送邮箱");
        mailMessages.setText("我是邮箱的内容:测试发送邮箱");
        javaMailSender.send(mailMessages);
    }

    
    @Test
    public void contextLoads02() throws Exception{
        //复杂消息邮件发送
        MimeMessage mimeMessage = javaMailSender.createMimeMessage();
        MimeMessageHelper mmh = new MimeMessageHelper(mimeMessage, true);
        mmh.setFrom("123@qq.com");
        mmh.setTo("456g@163.com");
        mmh.setSubject("我是邮箱的主题:测试发送邮箱");
        //默认false不显示,是否显示html内容。
        mmh.setText("<b style='color:blue'>我是邮箱的内容:测试发送邮箱</b>",false);
        //添加附件。
        mmh.addAttachment("pig.jpg",new File("E:\\images\\pig.jpg"));
        mmh.addAttachment("mon.jpg",new File("E:\\images\\mon.jpg"));
        javaMailSender.send(mimeMessage);
    }
}

注意:

535 Error: 可能密码(授权码)出错,是否开启了“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”/全部开启。

501 Error: 看下你设置setFrom发送人和配置中的发送人是否一致。 

530 Error: 可能需要在配置文件中开启安全连接:添加 “spring.mail.properties.mail.smtp.ssl.enable=true” 。

550 Error: 可能接收人的邮箱错误或者不可用。

(开启服务步骤:登录邮件QQ为例---->顶部点击【设置】---->菜单栏点击【账户】--->找到内容【账户安全】------>

找到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务” 有4个服务需要全部开启--------->左下角有【保存更改】----完成。)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值