使用Springboot收发邮件,如此简单!

准备工作


目前大部分的邮件服务都不允许直接使用用户名/密码的方式在代码种发送邮件,都是先要申请授权码,这里以qq邮箱为例,向大家演示授权码的申请流程,首先我们需要登陆到QQ邮箱中进行设置



在账户选项中开启POP3/SMTP服务

项目创建


接下来我们只需要创建springboot项目,由于springboot对邮件发送做了自动配置类,我们只需要加入相关的依赖就可以进行邮件的发送了。

完成创建后,项目依赖如下

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>
 <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
  </dependency>
  • 配置邮箱基本信息
spring.mail.host=smtp.qq.com
spring.mail.port=465
spring.mail.username=1056945048@qq.com
spring.mail.password=修改自己开启smpt服务的密码
spring.mail.default-encoding=utf-8
spring.mail.properties.mail.smtp.socketFactoryClass=javax.net.ssl.SSLSocketFactory
spring.mail.properties.mail.debug=true
spring.mail.properties.mail.smtp.ssl.enable=true
server.port=8092

做好这些后,springboot就会自动帮我们配置好邮件发送类,相关的配置在org.springframework.boot.autoconfigure.mail.MailSenderAutoConfiguration类中。

发送简单邮件

package com.xzy.mail.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.context.Context;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.util.Date;

/**
 * @author yangkun
 * @date 2020/5/20
 */
@Controller
public class EmpMailSender {
    @Autowired
    TemplateEngine templateEngine;
    @Autowired
    JavaMailSender javaMailSender;
    @RequestMapping("/send/simpleMail")
    public void sendSimpleMail() {
        //构建邮件对象
        SimpleMailMessage message = new SimpleMailMessage();
        //邮件主题
        message.setSubject("这是一封测试邮件");
        //邮件发送者
        message.setFrom("1056945048@qq.com");
        //邮件接收者(可以有多个)
        message.setTo("1040558262@qq.com");
        //邮件抄送人
        message.setCc("37xxxxx37@qq.com");
        //邮件隐秘抄送人(可以有多个)
        message.setBcc("14xxxxx098@qq.com");
        //邮件发送日期
        message.setSentDate(new Date());
        //邮件正文
        message.setText("这是测试邮件的正文");
        //发送邮件
        javaMailSender.send(message);
    }
    @RequestMapping("/send/thymeleafMail")
    public void sendThymeleafMail() throws MessagingException {
            MimeMessage mimeMessage = javaMailSender.createMimeMessage();
            MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);
            mimeMessageHelper.setSubject("入职欢迎");
            mimeMessageHelper.setSentDate(new Date());
            mimeMessageHelper.setFrom("1056945048@qq.com");
            mimeMessageHelper.setTo("1040558262@qq.com");
            //邮件抄送人
            mimeMessageHelper.setCc("3da1s44654437@qq.com");
            //邮件隐秘抄送人(可以有多个)
            mimeMessageHelper.setBcc("14445545098@qq.com");
            Context context = new Context();
            context.setVariable("name", "javaboy");
            context.setVariable("posName", "java后端开发");
            context.setVariable("joblevelName","java初级工师");
            context.setVariable("departmentName","软件开发部" );
            String text = templateEngine.process("mail.html", context);
            mimeMessageHelper.setText(text,true);
            javaMailSender.send(mimeMessage);
    }
}

浏览器中输入地址 http://localhost:8092/send/simpleMail 测试普通邮件发送
浏览器中输入地址 http://localhost:8092/send/thymeleafMail 测试使用thymeleaf模板发送
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于SpringBoot+Vue的商务安全邮箱邮件收发是一个集成了前端和后端技术的邮箱收发邮件平台,主要用于商务邮件接收和发送,保证商务信息的安全性和准确性。该系统的源码、部署说明和系统介绍已经打包成一个zip文件,方便用户使用。 该系统的前端部分采用了Vue框架进行开发,主要实现了用户界面和交互,包括登录、注册、邮件接收邮件发送等功能。而后端部分则采用了SpringBoot框架,负责处理用户请求、管理用户数据并提供相应的API接口。 该系统可以方便地接收和发送商务邮件,支持邮件的加密、签名、附件等功能,确保商务信息的安全性和准确性。用户可以方便地接收和发送邮件,附件等信息。同时,该系统还支持对用户权限的管理,可以对不同用户进行分组和授权,确保信息的安全性。 对于商务人员而言,该系统可以保证商务信息的安全性和准确性,方便快捷地管理和发送商务邮件。同时,对于开发者而言也是一个学习Vue和SpringBoot技术的不错案例,值得一试。 总之,基于SpringBoot+Vue的商务安全邮箱邮件收发系统是一个功能齐全、易用、实用性很高的邮箱收发平台,能够保证商务信息的准确性和安全性,提高了商务邮件发送和接收的效率。同时,对于开发者而言也是一个学习Vue和SpringBoot技术的不错案例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值