Springboot发送QQ邮件, 解决Could not connect to SMTP host: smtp.qq.com, port:XXXX


简单的说,就是端口不能访问,阿里云服务器屏蔽了25端口,用587就可以

上代码:

 

依赖:

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

配置:
spring.mail.default-encoding=UTF-8
spring.mail.host=smtp.qq.com
spring.mail.username=你的邮箱账号
spring.mail.password=你的授权码,注意,是授权码,不是登录密码
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.port=587

代码(不想写接口,随便用吧,见笑):
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
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;

/**
 * @author CqLiu
 * @create 2020-11-27 17:01
 */
@Service
public class QQMailService {
    @Autowired
    private JavaMailSender mailSender;

    @Value("${mail.fromMail.addr}")
    private String from;

    public void simple(String to,String title,String txt){
        SimpleMailMessage msg = new SimpleMailMessage();
        msg.setFrom(from);//发送者
        msg.setTo(to);//接收者
        msg.setSubject(title);//标题
        msg.setText(txt);//内容
        mailSender.send(msg);
    }

    public void html(String to,String title,String doc){
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        try {
            MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
            helper.setFrom(from);//发送人
            helper.setTo(to);//接收人
            helper.setSubject(title);//标题
            helper.setText(doc, true);//发送的内容
            mailSender.send(mimeMessage);
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM