首先,确保你已经下载并包含了 JavaMail API 的 JAR 文件(例如,javax.mail.jar)。
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
public class EmailSender {
public static void main(String[] args) {
// 收件人电子邮件地址
String to = "recipient@example.com";
// 发件人电子邮件地址
String from = "your-email@gmail.com";
// 发件人的 Gmail 用户名和密码(注意:不推荐在代码中硬编码密码,更安全的方式是使用安全存储,如密钥库)
final String username = "your-email@gmail.com";
final String password = "your-gmail-password";
// 使用默认的会话配置
Properties properties = new Properties();
// Gmail SMTP 服务器设置
properties.setProperty("mail.smtp.host", "smtp.gmail.com");
properties.setProperty("mail.smtp.port", "587");
properties.setProperty("mail.smtp.auth", "true");
properties.setProperty("mail.smtp.starttls.enable", "true");
// 获取默认会话
Session session = Session.getDefaultInstance(properties, new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
// 创建一封邮件
Message message = new MimeMessage(session);
// 设置发件人地址
message.setFrom(new InternetAddress(from));
// 设置收件人地址
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
// 设置邮件主题
message.setSubject("Test Email from Java");
// 设置邮件内容
message.setText("Hello,\n\nThis is a test email from Java.");
// 发送邮件
Transport.send(message);
System.out.println("Email sent successfully.");
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
在这个示例中,你需要替换以下信息:
- to: 收件人的电子邮件地址。
- from: 发件人的电子邮件地址。
- username 和 password: 用于通过 SMTP 服务器进行身份验证的 Gmail 用户名和密码。请注意,为了提高安全性,强烈建议使用安全存储,而不是在代码中硬编码密码。
确保你的 Gmail 帐户启用了 "Less secure app access",以允许通过应用程序发送邮件。你可以在 [Google 帐户的安全性页面](https://myaccount.google.com/security-checkup)中找到这个设置。
这只是一个简单的例子,实际上,你可能需要处理更复杂的情况,例如附件、HTML 内容等。根据具体需求,可以进一步定制邮件的内容和格式。
转载请注明出处:http://www.zyzy.cn/article/detail/437/Java