• pom引入邮件依赖
	<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

  • application 配置文件中配置邮件账户信息
spring:
  mail:
    username: ************@qq.com
    password: ********  (这里是授权码,不是邮件app上的登录密码)
    host: smtp.qq.com

  • 编写发邮件的的实现方法
@Service
public class SendMailServiceImpl2 implements SendMailService {

    @Autowired
    private JavaMailSender javaMailSender;

    //发送人
    private  String from = "********@qq.com";
    //接收人
    private  String to = "******@163.com";
    //标题
    private  String subject = "测试标题";
    //正文
    private  String context = "<img src='https://youpaiyun.lntsgmall.com/blog_image/2f32881d42929ef8d703dbd7720aae95.jpeg'/><a href='https://www.ypfblog.com'>点开有惊喜</a>";

    @Override
    public void sendMail() {
        //简单邮件发送
//        SimpleMailMessage message = new SimpleMailMessage();
//        message.setFrom(from+"(追梦小飞)");
//        message.setTo(to);
//        message.setSubject(subject);
//        message.setText(context);

        //复杂邮件发送


        try {
            MimeMessage message = javaMailSender.createMimeMessage();
            MimeMessageHelper helper = new MimeMessageHelper(message,true);
            helper.setFrom(from+"(追梦小飞)");
            helper.setTo(to);
            helper.setSubject(subject);
            helper.setText(context,true);
            //添加附件
            File file1 = new File("/Users/mac/Downloads/gost-linux-386-2.11.1.gz");
            helper.addAttachment(file1.getName(),file1);

            javaMailSender.send(message);
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}

  • 调用方法进行测试
@SpringBootTest
class SpringbootMailApplicationTests {

    @Autowired
    private SendMailService sendMailService;

    @Test
    void contextLoads() {
        sendMailService.sendMail();
    }

}