• 大小: 1.15MB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2023-10-02
  • 语言: Java
  • 标签: Java  eclipse  Email  

资源简介

该java代码包含有 1. 发送一封只包含文本的简单邮件 2.发送包含内嵌图片的邮件 3.发送包含附件的邮件 4.发送包含内嵌图片和附件的复杂邮件 相关配套博文: https://blog.csdn.net/qq_36474549/article/details/83342615

资源截图

代码片段和文件信息

package cn.wz.util;

import java.io.FileOutputStream;
import java.util.Properties;

import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

/**
 * @Description: 发送包含附件的邮件
 */

public class SendEmail_attachments {

private static String mailFrom = null;// 指明邮件的发件人
private static String password_mailFrom = null;// 指明邮件的发件人登陆密码

private static String mailTo = null; // 指明邮件的收件人

private static String mailTittle = null;// 邮件的标题

private static String mailText = null; // 邮件的文本内容

private static String mail_host = null; // 邮件的服务器域名

private static String photoSrc = null; // 发送图片的路径

public static void main(String[] args) throws Exception {

mailFrom = “test1@wz.com“;
password_mailFrom = “test“;
mailTo = “test2@wz.com“;
mailTittle = “JavaMail邮件发送测试“;
mailText = “使用JavaMail创建的带附件的邮件“;
mail_host = “wz.com“;
photoSrc = “resource\\images\\5.jpg“;

Properties prop = new Properties();
prop.setProperty(“mail.host“ mail_host);// 需要修改
prop.setProperty(“mail.transport.protocol“ “smtp“);
prop.setProperty(“mail.smtp.auth“ “true“);

// 使用JavaMail发送邮件的5个步骤
// 1、创建session
Session session = Session.getInstance(prop);
// 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
session.setDebug(true);
// 2、通过session得到transport对象
Transport ts = session.getTransport();
// 3、连上邮件服务器,需要发件人提供邮箱的用户名和密码进行验证
ts.connect(mail_host mailFrom password_mailFrom);// 需要修改
// 4、创建邮件
Message message = createAttachMail(session);
// 5、发送邮件
ts.sendMessage(message message.getAllRecipients());
ts.close();
}

/**
 * @Method: createAttachMail
 * @Description: 创建一封带附件的邮件
 */
public static MimeMessage createAttachMail(Session session) throws Exception {
MimeMessage message = new MimeMessage(session);

// 设置邮件的基本信息

message.setFrom(new InternetAddress(mailFrom)); // 发件人

message.setRecipient(Message.RecipientType.TO new InternetAddress(mailTo));// 收件人
// 邮件标题
message.setSubject(mailTittle);

// 创建邮件正文,为了避免邮件正文中文乱码问题,需要使用charset=UTF-8指明字符编码
MimeBodyPart text = new MimeBodyPart();
text.setContent(mailText “text/html;charset=UTF-8“);

// 创建邮件附件
MimeBodyPart attach = new MimeBodyPart();
DataHandler dh = new DataHandler(new FileDataSource(photoSrc));// 需要修改
attach.setDataHandler(dh);
attach.setFileName(dh.getName());

// 创建容器描述数据关系
MimeMultipart mp = new MimeMultipart();
mp.addBodyPart(text);
mp.addBodyPart(attach);
mp.setSubType(“mixed“);

message.setContent(mp);
message.saveChanges();
// 将创建的Email写入到F盘存储
message.writeTo(new FileOutputStream(“F:/Program Files/TestMail/ImageMail.eml“));// 需要修改
// 返回生成的邮件
return message;
}
}

评论

共有 条评论