SpringBoot实现简单的发送邮件

SpringBoot实现简单的发送邮件

1. 先开启POP3

打开QQ邮箱 -> 设置 -> 账户 -> 开启 POP3/SMTP服务

邮箱设置
开启服务

发送短信后会收到授权码,记住这个授权码。(注意不要泄露)

2. 创建项目

创建SpringBoot项目
创建SpringBoot项目
导入两个依赖
导入依赖
其中Java Mail Sender的依赖

<!--      Java Mail Sender  -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

配置src\main\resources下的application.properties

server.port=1314
spring.mail.host=smtp.qq.com
#邮箱号
spring.mail.username=xxxx@qq.com
#授权码(不是密码)
spring.mail.password=**************
spring.mail.default-encoding=utf-8
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
@RestController    //框架自动创建对象
public class MailController {
    //发送邮件的对象
    final JavaMailSender javaMailSender;

    public MailController(JavaMailSender javaMailSender) {
        this.javaMailSender = javaMailSender;
    }

    /**
     * 发送邮件的方法
     * @param subject 邮件标题
     * @param text 邮件正文
     */
    public void sendMail(String subject,String text){
        //创建邮件
        SimpleMailMessage mailMessage = new SimpleMailMessage();
        //设置收件人
        mailMessage.setTo("123456@qq.com");
        //设置发件人
        mailMessage.setFrom("456789@qq.com");
        //设置邮件标题
        mailMessage.setSubject(subject);
        //设置邮件标题
        mailMessage.setText(text);
        //发送邮件
        javaMailSender.send(mailMessage);
    }
    //发送普通邮件
    @RequestMapping("/send1")
    public String send1(){
        sendMail("测试邮件标题", "测试邮件正文");
        return "测试邮件发送成功!!";
    }
    //出异常,发邮件
    @RequestMapping("/send2")
    public String send2(){
        try{
            int a = 10 / 0;
            System.out.println(a);
        }catch(Exception e){
            //把异常信息转换成字符串
            StringWriter stringWriter = new StringWriter();
            PrintWriter printWriter = new PrintWriter(stringWriter);

            e.printStackTrace(printWriter);
            sendMail("异常信息", stringWriter.toString());
        }

        return "异常信息发送成功!";
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小辰~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值