java-springboot整合发送邮件|告警邮件|注册邮件

本文介绍了如何使用SpringBoot整合邮件服务,包括SMTP协议、POP3/IMAP/MIME等基础知识,详细步骤从项目起步、配置、依赖引入到异常处理,特别是针对javax.mail.AuthenticationFailedException的解决办法。还展示了邮件模板的创建,使用Thymeleaf编写HTML邮件内容,并给出了服务层和控制层的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、基础知识

邮件传输协议:

  • SMTP协议(简单邮件传输协议,属于TCP/IP协议簇,应用层协议)
  • POP3协议(邮局协议版本3,是TCP/IP协议族中的一员,本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S)
  • IMAP协议(邮件客户端(可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等它与POP3协议的主要区别是用户可以不用把所有的邮件全部下载,可以通过客户端直接对服务器上的邮件进行操作。 )
  • Mime协议

发送流程:
这里写图片描述

springboot
请自行参考其他博客

二、项目起步

1.使用maven创建springboot项目/注册邮箱开通pop3stmp
这里写图片描述

2.添加,导入主要依赖

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

3.添加相关配置参数application

spring.mail.host=smtp.126.com
spring.mail.username=********@126.com
#注意:需要126开通授权码服务填入下面
spring.mail.password=*****
spring.mail.default-encoding=UTF-8

4.发送邮件服务示例

import com.honghe.managerTool.service.SendMailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.io.File;

/**
 * @author: zhaojianyu
 * @create: 2018-09-10 10:43
 **/
@Service
public class SendMailServiceImpl implements SendMailService{
   
   

    @Value("${spring.mail.username}")
    private String whoAmI;

    @Autowired
    private JavaMailSender mailSender;

    /**
     * 发送简单邮件
     * @param to 发送给谁
     * @param subject 邮件主题
     * @param content 邮件内容
     */
    @Override
    public void sendSimpleMail(String to, String subject, String content) {
   
   
        SimpleMailMessage message = new SimpleMailMessage();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值