<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
<version>2.6.3</version>
</dependency>
package com.rootcloud.platform.dpm.application.mail;
import org.apache.commons.compress.utils.Lists;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import java.util.ArrayList;
/**
* 邮件发送配置
*/
@Configuration
public class MailConfig {
@Value("${mail.host}")
private String host;
@Value("${mail.username}")
private String username;
@Value("${mail.password}")
private String password;
@Bean
public JavaMailSenderImpl javaMailSender(){
JavaMailSenderImpl sender = new JavaMailSenderImpl();
// 发送邮件服务器
sender.setHost(host);
// 发送人账号
sender.setUsername(username);
// 发送人密码
sender.setPassword(password);
return sender;
}
@Bean
public SimpleMailMessage simpleMailMessage(){
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
// 发送人邮箱
simpleMailMessage.setFrom(username);
return simpleMailMessage;
}
}
package com.rootcloud.platform.dpm.application.mail;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.stereotype.Service;
/**
* 邮件发送 Service
*/
@Service
public class MailSendService {
@Autowired
private JavaMailSenderImpl javaMailSender;
@Autowired
private SimpleMailMessage simpleMailMessage;
/**
* 简单邮件发送
* @param toMail 接收人邮箱
* @param text 发送的内容
* @param subject 标题
*/
public void SendMailTest(String toMail,String text,String subject){
simpleMailMessage.setTo(toMail);
simpleMailMessage.setText(text);
simpleMailMessage.setSubject(subject);
javaMailSender.send(simpleMailMessage);
}
}
# 邮箱账号信息配置
mail:
host: # 发送服务器 如果是公司的邮箱有注册域名 ,用公司的邮件发送服务器,
# qq : smtp.qq.com
# 163: smtp.163.com
username: # 邮件账号名
password: # 如果是公司域名 这里可以用密码
# qq 和 163 得要授权码
# 取拿授权码 网上搜一下很容易找的
后面直接注入MailSendService 调用SendMailTest 方法就好.