使用Commons Email发送带有附件的邮件

在前面介绍了怎样使用Apache Commons Email方一封简单的纯文本的邮件。但是在实际应用中,邮件可能需要包括附件。如:包含Word文件、图片、压缩文件等。这里将介绍怎样发送一封带有附件的邮件。

在前面介绍了怎样使用Apache Commons Email方一封简单的纯文本的邮件。但是在实际应用中,邮件可能需要包括附件。如:包含Word文件、图片、压缩文件等。这里将介绍怎样发送一封带有附件的邮件。

项目结构图:

带附件邮件测试项目结构图

代码如下:

package com.bug315;

import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.MultiPartEmail;

public class AttachementEmailTest {

	public static void main(String[] args) {
		try {
			// 发送人邮箱地址和密码
			String fromSMTP = "smtp.163.com";
			String fromEmail = "***@163.com";
			String fromPwd = "futkp***";
			// 收件人邮箱地址
			String toEmail = "***@qq.com";
			
			// 创建一个带有图片附件
			EmailAttachment attachmentImg = new EmailAttachment();
			attachmentImg.setPath("document/150606.png");
			attachmentImg.setDisposition(EmailAttachment.ATTACHMENT);
			attachmentImg.setDescription("Email测试项目结构图");
			attachmentImg.setName("Email项目");
			
			// 创建一个带有压缩包的附件
			EmailAttachment attachmentJar = new EmailAttachment();
			attachmentJar.setPath("document/email-1.4.jar");
			attachmentJar.setDisposition(EmailAttachment.ATTACHMENT);
			attachmentJar.setDescription("Apache Commons Email项目的jar包");
			attachmentJar.setName("Commons Email");
			
			// 创建一个网络加载图片附件
			EmailAttachment attachmentUri = new EmailAttachment();
			attachmentUri.setURL(new URL("https://www.hxstrive.com/hxstrivedocs/2015/06/07/1037120419_1.png"));
			attachmentUri.setDisposition(EmailAttachment.ATTACHMENT);
			attachmentUri.setDescription("来自网络图片");
			attachmentUri.setName("网络图片");
			
			// 创建邮件信息
			MultiPartEmail email = new MultiPartEmail();
			email.setHostName(fromSMTP);
			email.setAuthentication(fromEmail, fromPwd);
			email.setFrom(fromEmail, "lishi");
			email.addTo(toEmail, "zhangsan");
			email.setSubject("通过邮件发送附件测试");
			email.setMsg("这封邮件包含两个附件:1、一种图片;2、一个压缩包jar文件");
			
			// 将附件设置到邮件中
			email.attach(attachmentImg);
			email.attach(attachmentJar);
			email.attach(attachmentUri);
			
			// 发送
			email.send();
			System.out.println("发送成功");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
}
学习知识要善于思考,思考,再思。我就是靠这个方法成为科学家的。 —— 爱因斯坦
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号