新闻资讯
邮箱验证中的硬性功能——发送QQ邮件
1.导入依赖jar包
2.在你要发送的邮件的地址开启相关服务
1.配置环境
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4</version>
</dependency>
2.在你要发送的邮件的地址开启相关服务
2.方法:我的是在网页版QQ邮箱,设置 >> 账户 >> POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
3.按提示获取 授权码,获取到后要保存好,它相当于你的登录密码
二话不说,上代码:
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class EmailTest3
{
public static void main(String [] args)
{
// 收件人电子邮箱
String to = "a@qq.com,b@qq.com"; //可以多个
// 发件人电子邮箱
String from = "c@qq.com";
// 指定发送邮件的主机为 smtp.qq.com
String host = "smtp.qq.com"; //QQ 邮件服务器
// 获取系统属性
Properties properties = System.getProperties();
// 设置邮件服务器
properties.setProperty("mail.smtp.host", host);
properties.put("mail.smtp.auth", "true");
// 获取默认session对象
Session session = Session.getDefaultInstance(properties,new Authenticator(){
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("c@qq.com", "xxxxxxxx"); //发件人邮件用户名、授权码
}
});
try{
// 创建默认的 MimeMessage 对象
MimeMessage message = new MimeMessage(session);
// Set From: 头部头字段
message.setFrom(new InternetAddress(from));
// Set To: 头部头字段
message.setRecipients(MimeMessage.RecipientType.TO,
InternetAddress.parse(to));
// Set Subject: 头部头字段
message.setSubject("This is the Subject Line!");
// 设置消息体
message.setText("This is actual message");
// 发送消息
Transport.send(message);
System.out.println("Sent message successfully....from runoob.com");
}catch (MessagingException mex) {
mex.printStackTrace();
}
}
}
这就成功了,后面验证的步骤作为一名程序开发者就不仔细讲了,这里需要注意的是QQ邮件的服务器需要书写正确,鹅厂的文档及网络上教程里面几种,不能死板的只用一种,剩下的小编就不多讲了!!!
摘自:https://blog.csdn.net/weixin_43520670/article/details/107424276
回复列表