最近在一个项目做到需要后台发送邮箱警告,谷歌百度了很多。自己总结了一下
首先要在QQ邮箱设置一下 ,获取到第三方登录的密码
//使用到的jar包
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import java.util.Properties;
public static void SendEmailByQQ(){
String userName = "平时QQ邮箱登录的账号";
String password = "获取到第三方登录的密码";
String from = "发送邮件的账号";
String to = "接收邮件的账号";
String ssl = "javax.net.ssl.SSLSocketFactory";
//创建一个发送者对象
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost("smtp.qq.com");
mailSender.setUsername(userName);
mailSender.setPassword(password);
// //加认证机制
Properties properties = new Properties();
properties.setProperty("mail.transport.protocol", "smtp");
properties.setProperty("mail.smtp.auth", "true");//开启认证
properties.setProperty("mail.debug", "true");//启用调试
## 加了以下的参数后就会报错 不知道上面原因,注释掉就好了。有知道的大佬麻烦评论告知以下 谢谢
// properties.setProperty("mail.smtp.timeout", "1000");//设置链接超时
// properties.setProperty("mail.smtp.port", "465");//设置端口
// properties.setProperty("mail.smtp.socketFactory.port", "465");//设置ssl端口
// properties.setProperty("mail.smtp.socketFactory.fallback", "false");
// properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
mailSender.setJavaMailProperties(properties);
//组织邮件参数并执行发送
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from);
message.setTo(to);
message.setSubject("邮件标题");
message.setText("邮件内容");
mailSender.send(message);
}