网站内容建设和管理,做网站还是做app好,php语言的网站建设,网站设计运行费用步骤一、添加邮件相关依赖二、配置邮件服务器三、发送邮件PS#xff1a;SMTP 发送失败的解决方案一、添加邮件相关依赖
在 pom.xml 文件中添加 JavaMail 和 Spring Mail 相关的依赖。示例代码如下#xff1a;
dependencygroupIdcom.sun.mail/groupIdSMTP 发送失败的解决方案一、添加邮件相关依赖
在 pom.xml 文件中添加 JavaMail 和 Spring Mail 相关的依赖。示例代码如下
dependencygroupIdcom.sun.mail/groupIdartifactIdjavax.mail/artifactIdversion1.6.2/version
/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-mail/artifactId
/dependency二、配置邮件服务器
在 application.properties 文件中配置邮件服务器相关参数。示例代码如下
# SMTP服务器地址QQ邮箱的SMTP服务器地址为smtp.qq.com
spring.mail.hostsmtp.qq.com
# SMTP服务器端口QQ邮箱的SMTP服务器端口为465或587
spring.mail.port465
# 使用SSL协议连接SMTP服务器
spring.mail.protocolsmtps
# 邮箱用户名一般以自己的QQ邮箱为发送方所以写自己的QQ邮箱即可
spring.mail.usernameyourusernameqq.com
# 邮箱授权码不是密码
spring.mail.passwordyourauthorizationcode
# 邮件编码
spring.mail.default-encodingUTF-8
# 是否开启调试模式
spring.mail.debugtrue注意 服务器发送QQ邮件需要QQ邮箱的授权码而不是QQ密码进行身份验证。可以通过在 QQ 邮箱的设置中开启POP3/SMTP服务并记下授权码步骤如下
登录QQ邮箱进入邮箱首页。点击页面左上角的“设置”按钮选择“账户”。在“账户”设置的页面中找到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”选项卡。在“POP3/SMTP服务”部分点击“开启”按钮。记住授权码
三、发送邮件
Service
public class UserInfoServiceImpl implements UserInfoService {Resourceprivate UserInfoMapper userInfoMapper;Resourceprivate JavaMailSender javaMailSender;// 邮件服务器// 发送邮箱验证码Overridepublic int sendEmailVerCode(UserInfoDto userInfoDto) {// 创建邮件消息SimpleMailMessage message new SimpleMailMessage();message.setFrom(yourusernameqq.com);//必须写与配置相同的QQ邮箱message.setTo(userInfoDto.getEmail());//设置接收用户的邮箱message.setSubject(Reset Password Verification Code);// 生成 6 位数字验证码Random random new Random();int verificationCode random.nextInt(899999) 100000;message.setText(Your verification code is: verificationCode);// 发送邮件javaMailSender.send(message);// 将验证码返回前端通过前端直接验证即可return verificationCode;}
}PSSMTP 发送失败的解决方案
建议采用以下方法之一进行排除
如果您的网络使用的是动态 IP 地址请尝试更换当前 IP 地址再次发送邮件。可以通过重启路由器或重新拨号来更换动态 IP。如果您正在使用 VPN 或代理服务请尝试暂停使用并再次发送邮件。检查您的防火墙设置确保您的 Spring Boot 应用程序可以通过防火墙发送邮件。检查您的 QQ 邮箱账户是否存在异常例如异常登录、账单欠费等情况这可能会导致邮件无法发送成功。