📅  最后修改于: 2023-12-03 15:16:02.147000             🧑  作者: Mango
在Java中,我们可以使用JavaMail API来发送电子邮件。JavaMail API是一个用于发送和接收邮件的Java标准扩展。本文将介绍如何在Java中使用JavaMail API发送电子邮件。
在使用JavaMail API发送电子邮件前,我们需要先导入JavaMail API。可以在https://java.net/projects/javamail/pages/Home下载JavaMail的最新版本。
具体步骤如下:
我们可以使用以下代码来发送电子邮件:
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class EmailSender {
public static void main(String[] args) {
String to = "recipient@example.com";
String subject = "Test Email";
String body = "This is a test email from Java.";
sendEmail(to, subject, body);
System.out.println("Email sent successfully.");
}
public static void sendEmail(String to, String subject, String body) {
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.port", "587");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
String username = "your-email@example.com";
String password = "your-email-password";
Session session = Session.getInstance(props, new javax.mail.Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(username, password);
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(username));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
message.setSubject(subject);
message.setText(body);
Transport.send(message);
} catch (AddressException e) {
throw new RuntimeException(e);
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
}
请注意,这个程序需要做一些修改,以便适用于您特定的情况。您需要更改以下值:
to
:电子邮件接收者的地址subject
:电子邮件的主题body
:电子邮件的正文mail.smtp.host
:SMTP服务器的主机名mail.smtp.port
:SMTP服务器的端口号username
:用于身份验证的电子邮件地址password
:用于身份验证的电子邮件地址的密码现在,您可以在终端中执行此程序,并检查您的电子邮件是否已成功发送。
JavaMail API是一个用于发送和接收邮件的Java标准扩展,这使得在Java中发送电子邮件变得非常容易。本文介绍了如何在Java中使用JavaMail API发送电子邮件,并提供了一个可以用作参考的示例程序。