30 | SpringBoot之邮件任务

springboot自动配置包中MailSenderAutoConfiguration通过@Import注解向容器中导入了MailSenderJndiConfiguration,而MailSenderJndiConfiguration向容器中导入了JavaMailSenderImpl类,我们可以使用该类发送邮件

首先登录自己的qq邮箱,进入 设置 - 账户 开启所有服务
在这里插入图片描述

点POP3的开启获取授权码

加入依赖

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

配置文件

spring:
  mail:
    username: 邮箱用户名
    password: 邮箱密码或授权码 (建议使用授权码 安全)
    host: smtp.qq.com
    port: 465
    protocol: smtps

自动注入

@Autowired
private JavaMailSenderImpl javaMailSender;

简单邮件发送

    SimpleMailMessage message = new SimpleMailMessage();
    //设置主题和内容
    message.setSubject("今天开会");
    message.setText("物质楼555开会,不要迟到");
    //设置发送方和接收方
    message.setTo("xxx@163.com");
    message.setFrom("xxx@qq.com");
    javaMailSender.send(message);

复杂邮件发送
带有附件或html页面的邮件

两个设置

   new MimeMessageHelper(message,true)  设置multipart=true,开启对内联元素和附件的支持

   helper.setText("xxxx",true)  html=ture,设置content type=text/html,默认为text/plain
    MimeMessage message = javaMailSender.createMimeMessage();
    //multipart=true
    //开启对内联元素和附件的支持
    MimeMessageHelper helper = new MimeMessageHelper(message,true);

    helper.setSubject("今天开会");
    //html=ture
    //设置content type=text/html,默认为text/plain
    helper.setText("<b style='color:red'>物质楼555开会,不要迟到</b>",true);

    helper.setFrom("hongshengmo@163.com");
    helper.setTo("1043245239@qq.com");
    //设置附件
    helper.addAttachment("2.png",new File("D:\\Works\\Note\\images\\图片2.png"));
    helper.addAttachment("3.png",new File("D:\\Works\\Note\\images\\图片3.png"));
    javaMailSender.send(message);

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值