Java实现发邮件带附件
流程图
flowchart TD
Start --> 输入SMTP服务器地址
输入SMTP服务器地址 --> 输入发件人邮箱
输入发件人邮箱 --> 输入收件人邮箱
输入收件人邮箱 --> 输入邮箱密码
输入邮箱密码 --> 选择附件
选择附件 --> 发送邮件
发送邮件 --> End
步骤
步骤 | 操作 |
---|---|
1 | 输入SMTP服务器地址 |
2 | 输入发件人邮箱 |
3 | 输入收件人邮箱 |
4 | 输入邮箱密码 |
5 | 选择附件 |
6 | 发送邮件 |
详细说明
1. 输入SMTP服务器地址
String host = "smtp.example.com"; // 替换为实际的SMTP服务器地址
2. 输入发件人邮箱
String from = "your_email@example.com"; // 替换为实际的发件人邮箱
3. 输入收件人邮箱
String to = "recipient@example.com"; // 替换为实际的收件人邮箱
4. 输入邮箱密码
String password = "your_password"; // 替换为实际的邮箱密码
5. 选择附件
MimeBodyPart attachment = new MimeBodyPart();
DataSource source = new FileDataSource("attachment.txt"); // 替换为实际的附件路径
attachment.setDataHandler(new DataHandler(source));
attachment.setFileName("attachment.txt");
6. 发送邮件
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.auth", "true");
Session session = Session.getInstance(props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(from, password);
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject("Subject");
message.setText("Hello, This is a test email!");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(attachment);
message.setContent(multipart);
Transport.send(message);
System.out.println("Email sent successfully!");
} catch (MessagingException e) {
e.printStackTrace();
}
结尾
通过以上步骤,你可以使用Java实现发送带附件的邮件。这个过程可能看起来有些复杂,但只要按照步骤逐步操作,你将能够成功发送邮件。希望这篇文章对你有所帮助,祝你在编程的道路上越走越远!