- 申请邮箱服务开通POP3/SMTP(以qq邮箱为例)

直接在这里生成授权码 - 记住开通的邮箱账号和授权码,在java里面配置
- Java程序
private Boolean sendEmail(String toEmail, String subject, String content){
try {
// 发件人电子邮箱
String from = "";
// 指定发送邮件的主机
String host = "";
// 指定发送邮件端口,默认25
String port = "25";
//授权码或密码,刚在qq邮箱里面生成的授权码
String authorizationCode = ”“;
// 获取系统属性
Properties properties = System.getProperties();
// 设置邮件服务器
properties.setProperty("mail.smtp.host", host);
// 打开认证
properties.setProperty("mail.smtp.auth", "true");
properties.setProperty("mail.smtp.port", port);
properties.put("mail.smtp.starttls.enable", "true");
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(from, authorizationCode);
}
});
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(toEmail));
message.setSubject(subject);
message.setContent(content, "text/html;charset=utf-8");
Transport.send(message);
return true;
} catch (MessagingException e) {
log.error("邮件发送异常", e);
return false;
}
}