Java发送qq邮件(方式2)
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
/**
* 发送qq邮件(方式2)
*
* @param sender 发送方邮箱
* @param senderName 发送方姓名
* @param authCode 授权码
* @param receiver 接受方邮箱
* @param subject 主题
* @param content 内容(可使用HTML标签)
* 需导入依赖
* <dependency>
* <groupId>org.apache.commons</groupId>
* <artifactId>commons-email</artifactId>
* </dependency>
*/
public static void sendMail(String sender, String senderName, String authCode,
String receiver, String subject, String content) throws Exception {
// 设置Session链接属性
Properties props = new Properties();
// 设置SMTP发送服务器
props.setProperty("mail.transport.protocol", "SMTP");
props.setProperty("mail.host", "smtp.qq.com");
// 设置验证
props.setProperty("mail.smtp.auth", "true");
// 创建验证器
Authenticator auth = new Authenticator() {
@Override
public PasswordAuthentication getPasswordAuthentication() {
// 设置用户名与授权码
return new PasswordAuthentication(sender, authCode);
}
};
// 创建 Session邮件服务器会话对象 Session
Session session = Session.getInstance(props, auth);
// 创建一个Message,它相当于是邮件内容
Message message = new MimeMessage(session);
// 设置发送者与姓名
message.setFrom(new InternetAddress(sender, senderName));
// 设置发送方式与接收者
message.setRecipient(Message.RecipientType.TO, new InternetAddress(receiver));
// 设置标题与内容
message.setSubject(subject);
message.setContent(content, "text/html;charset=utf-8");
// 创建 Transport用于将邮件发送
Transport.send(message);
}
获取邮箱授权码教程
qq邮箱:[https://baijiahao.baidu.com/s?id=1552315463915496&wfr=spider&for=pc](https://baijiahao.baidu.com/s?id=1552315463915496&wfr=spider&for=pc)
更多方法访问Java工具网[utils.net.cn](http://utils.net.cn/)
每个方法单独使用,不互相依赖,持续更新!