需要的jar包
pom.xml
<dependency>
<groupId>com.sun.activation</groupId>
<artifactId>javax.activation</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
测试代码
public static void main(String[] args) {
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp"); // 使用协议
props.setProperty("mail.smtp.host", "smtp.qq.com"); // QQ邮箱的SMTP服务器地址
props.setProperty("mail.smtp.auth", "true"); // 需要认证
// 启用TLS加密,使用端口587
props.setProperty("mail.smtp.port", "587");
props.setProperty("mail.smtp.starttls.enable", "true");
// 或者使用SSL加密,使用端口465 (两种方式二选一)
// props.setProperty("mail.smtp.port", "465");
// props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
// props.setProperty("mail.smtp.socketFactory.port", "465");
// 2. 创建会话
Session session = Session.getInstance(props, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
// 邮箱地址和授权码
return new PasswordAuthentication("fajianyou@qq.com", "");
}
});
// 为了查看调试信息,可以取消注释下一行
// session.setDebug(true);
try {
// 3. 构建邮件
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("fajianyou@qq.com")); // 发件人
message.setRecipient(Message.RecipientType.TO, new InternetAddress("shoujianren@qq.com")); // 收件人
message.setSubject("helloWorld"); // 主题
message.setText("你好,\n\n这是一封通helloWorld发送的测试邮件。\n\n祝好!"); // 纯文本正文
// 4. 发送邮件
Transport.send(message);
System.out.println("邮件发送成功!");
} catch (MessagingException e) {
e.printStackTrace();
System.out.println("邮件发送失败: " + e.getMessage());
}
}
4480

被折叠的 条评论
为什么被折叠?



