项目中用到Spring Boot发QQ邮箱给女朋友

1.登录邮箱 ——>点击设置

在这里插入图片描述
2.开启服务POP3/SMTP,点击验证手机号码

在这里插入图片描述
在这里插入图片描述
4.获取授权码保存

在这里插入图片描述
5.创建项目依赖

在这里插入图片描述
6.配置依赖.properties

spring.mail.host=smtp.qq.com
spring.mail.protocol=smtp
[email protected]
spring.mail.default-encoding=UTF-8
spring.mail.port=465
spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
spring.mail.properties.mail.debug=true
spring.mail.password=hpqxqvacriwibdbe

复制代码

7.单元测试

@RunWith(SpringRunner.class)
@SpringBootTest
public class MailApplicationTests {
    @Autowired
    JavaMailSender mailSender;
    @Test
    public void contextLoads() {
        SimpleMailMessage msg = new SimpleMailMessage();
        msg.setTo("[email protected]");
        msg.setCc("[email protected]");
        msg.setSubject("这是一封测试情书");
        msg.setFrom("[email protected]");
        msg.setSentDate(new Date());
        msg.setText("哈哈!你行不行啊");
        mailSender.send(msg);
    }
复制代码

8.用网页格式发送需要导pom.xml依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
复制代码

9.写个main.html页

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <p>欢迎<span style="color: #ffff11;" th:text="${username}"></span> 加入
    XXX 大家庭</p>
    <div>你的入职信息如下:</div>
<table torder="1">
    <tr>
        <td>职位</td>
        <td>th:text="${position}"</td>

    </tr>
    <tr>
        <td>薪资</td>
        <td th:text="${salary}"></td>

    </tr>
</table>
</body>
</html>
复制代码

10.单元测试

package org.javaboy.mail;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMailMessage;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.test.context.junit4.SpringRunner;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.context.Context;

import javax.mail.Message;
import javax.mail.MessageRemovedException;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.util.Date;

@RunWith(SpringRunner.class)
@SpringBootTest
public class MailApplicationTests {
    @Autowired
    JavaMailSender mailSender;

    @Autowired
    TemplateEngine templateEngine;
    @Test
    public void contextLoads() {
        SimpleMailMessage msg = new SimpleMailMessage();
        msg.setTo("[email protected]");

        msg.setSubject("这是一封情书");
        msg.setFrom("[email protected]");
        msg.setSentDate(new Date());
        msg.setText("约会吗");
        mailSender.send(msg);
    }

    @Test
    public void test1() throws MessagingException{
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
        helper.setCc("[email protected]");
        helper.setCc("[email protected]");
        helper.setSubject("给我打万块钱");
        helper.setFrom("[email protected]");
        helper.setSentDate(new Date());
        Context context = new Context();
        context.setVariable("username","libobo");
        context.setVariable("position","老婆");
        context.setVariable("salary","10000");
        String mail = templateEngine.process("main", context);
        helper.setText(mail,true);
        mailSender.send(mimeMessage);
    }
}

复制代码

猜你喜欢

转载自juejin.im/post/5cc6f78ef265da03904c22eb