用apache commons email 发送邮件
package commonsMail;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import javax.mail.internet.MimeUtility;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.commons.mail.SimpleEmail;
public class CommonsEmail {
private String emailServer = "smtp.163.com";
private String userName = "zxe_llh@163.com";
private String password = "";
private String emailEncoding = "GBK"; //Email编码
/**
* 测试发送不包含附件的简单纯文本邮件,最简单的
* @throws EmailException
* @throws EmailException
*/
public void testSimpleEmail() throws EmailException{
SimpleEmail email = new SimpleEmail();
email.setHostName(emailServer); //服务器名
email.setAuthentication(userName, password); //用户名,密码
email.setCharset(emailEncoding); //邮件编码方式
email.addTo("zxe_llh@163.com","来函请教问题"); //收信人
email.setFrom("zxe_llh@163.com","zhuxiange"); //发信人
email.setSubject("测试邮件"); //标题
email.setMsg("来函请教问题"); //正文
email.send(); //发送
System.out.println("邮件测试成功!");
}
/**
* 测试发送包含附件的邮件
* @throws UnsupportedEncodingException
* @throws EmailException
* @throws MalformedURLException
*/
public void testMultiPartEmail() throws UnsupportedEncodingException, EmailException, MalformedURLException{
//本地附件
EmailAttachment att1 = new EmailAttachment();
att1.setPath("C:/测试情况.doc"); //附件原始路径
att1.setDisposition(EmailAttachment.ATTACHMENT);
//是否乱码无法测试,若乱码可参考下一句解决方法
att1.setDescription("attachemnt description gril 中文"); //附件描述
//防止附件名乱码
att1.setName(MimeUtility.encodeText("测试情况.doc")); //附件名称
//网络附件
EmailAttachment att2 = new EmailAttachment();
att2.setURL(new URL("http://www.apache.org/images/asf_logo_wide.gif"));
att2.setDisposition(EmailAttachment.ATTACHMENT);
att2.setDescription("attachemnt description logo 中文");
att2.setName(MimeUtility.encodeText("logo 中文.gif"));
MultiPartEmail email = new MultiPartEmail();
email.setHostName(emailServer);
email.setAuthentication(userName, password);
email.setCharset(emailEncoding);
email.addTo("769325861@qq.com","来函请教问题"); //收信人
email.setFrom("zxe_llh@163.com","来函请教问题"); //发信人
email.setSubject("来函请教问题"); //标题
email.setMsg("深圳来函请教问题"); //正文
email.attach(att1); //发送
email.attach(att2);
email.send();
}
/**
* 测试发送HTML格式的邮件,经测试发现:用到的图片在QQ的邮箱界面中没有附件的图标
* @throws UnsupportedEncodingException
* @throws EmailException
* @throws MalformedURLException
*/
public void testHtmlEmail() throws UnsupportedEncodingException, EmailException, MalformedURLException{
HtmlEmail email = new HtmlEmail();
email.setHostName(emailServer);
email.setAuthentication(userName, password);
email.setCharset(emailEncoding);
email.addTo("769325861@qq.com","来函请教问题"); //收信人
email.setFrom("zxe_llh@163.com","来函请教问题"); //发信人
email.setSubject("来函请教问题"); //标题
//本地图片
File file = new File("C:/sss.jpg");
String cid1 = email.embed(file, "sss.jpg");
//网络图片
URL url = new URL("http://www.apache.org/images/asf_logo_wide.gif");
String cid2 = email.embed(url, "logo 中文.gif");
email.setHtmlMsg("pretty gril - " + ""+ "The apache logo - "+ "");
email.setTextMsg("Your email client does not support HTML messages");
email.send();
}
//运行测试
public static void main(String args[]){
CommonsEmail email = new CommonsEmail();
try {
//email.testSimpleEmail();
//email.testMultiPartEmail();
email.testHtmlEmail();
} catch (EmailException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
这份资料是+++利用Apache Commons Email发送邮件+++的内容,希望能给有志成为IT人才一点帮助!你的进步就是对我最大的回报! Thank you!
Apache Commons Email是Java开发中一个非常实用的工具库,它为简化邮件发送提供了丰富的功能。这个库封装了JavaMail API,使得开发者可以更加方便、高效地处理电子邮件的发送任务,而无需深入理解复杂的邮件协议和...
Apache Commons Email是一个强大的Java库,专门用于简化电子邮件的创建和发送。这个库是Apache软件基金会的一个项目,旨在提供一个简单、直接的API,使得开发者在处理邮件相关的编程任务时能够更加便捷。Apache ...
总结一下,Apache Commons Email库为Java开发者提供了方便的邮件发送功能,简化了与SMTP服务器的交互。通过`SendMail.java`文件,我们可以学习到如何使用这个库来创建、配置和发送电子邮件,从而在项目中实现更高效...
本篇将深入讲解如何使用Apache Commons Email工具类来发送带有验证码的电子邮件。 首先,Apache Commons Email是Apache软件基金会的一个项目,它提供了一组丰富的API,简化了Java中发送电子邮件的过程。这个库包含...
Apache Commons Mail 是一个Java库,它为发送电子邮件提供了一个简单且强大的API。这个库是对JavaMail API的一个方便的封装,简化了通过Java程序发送电子邮件的过程。在JavaMail中,配置和使用邮件服务可能相对复杂...
Apache Commons Email 是一个Java库,专门用于简化电子邮件的发送。这个库提供了丰富的API,使得开发者可以轻松地构建和发送各种类型的邮件,包括HTML格式的邮件。在这个“commons email 发送html邮件完整优化实例”...
下面我们将深入探讨如何使用Commons Email发送邮件,以及其核心功能。 首先,要使用Commons Email,你需要在你的项目中引入对应的jar包。在提供的压缩包中,应该包含了`commons-email-x.x.jar`,这是Apache Commons...
《Android应用中使用Apache Commons Email库发送邮件》 在Android应用程序开发中,有时我们需要集成邮件发送功能,以便向用户发送验证码、通知或者提供其他服务。Apache Commons Email库是一个强大的Java库,它简化...
6. Apache Commons Email: 这个模块使得发送电子邮件变得非常简单,支持HTML邮件、附件、多部分消息以及SMTP认证等功能。 这些jar包是许多Java项目中不可或缺的部分,尤其在处理系统级任务或提高代码可复用性时。...
9. **Email**: Commons Email 提供了一个简单的API来发送电子邮件,支持HTML邮件、附件等。 10. **Execute**: 这个组件提供了一种执行外部进程并管理其生命周期的方式。 在实际开发中,Apache Commons工具集大大...
总结,Apache Commons Email库提供了一套强大且易于使用的API,使得在Java中发送电子邮件变得简单。通过`TestCommonEMail.java`这样的示例代码,开发者可以快速上手并掌握邮件发送的核心步骤,同时根据项目需求灵活...
在这个例子中,我们将深入探讨如何使用Apache Commons Email库在Java中实现邮件发送。 首先,你需要在项目中引入Apache Commons Email的依赖。如果是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml ...
在Java编程环境中,发送电子邮件是一项常见的任务,而`commons-email-1.4.jar`是Apache Commons Email库的一个版本,这个库专门设计用于简化Java中的邮件发送。Apache Commons Email是Apache软件基金会开发的一个...
在Android平台上,发送HTML格式的电子邮件可以通过使用第三方库来实现,比如Apache Commons Email库中的`org.apache.commons.mail.HtmlEmail`类。这个类提供了一个方便的方式来构造和发送包含HTML内容的邮件。下面...
Apache Commons Email 是一个Java库,专门用于简化电子邮件的创建和发送。这个库是Apache Commons项目的一部分,它提供了许多实用工具和方法,使得开发者在处理电子邮件时可以避免直接操作复杂的JavaMail API。...
集成这些jar包后,开发者可以按照以下步骤使用JavaMail和Commons Email发送邮件: 1. 添加依赖:将上述jar包放入项目的类路径或构建工具的依赖管理中。 2. 创建Session:配置邮件服务器的相关参数,如主机名、端口...
- **简介**:Apache Commons Email 是一个用于创建和发送电子邮件的库,它基于 JavaMail API 提供了一层更简洁的接口。 - **功能**:支持发送纯文本邮件、带有附件的纯文本邮件以及包含 HTML 内容的邮件。 - **...
这个名为"commons-email-1.4.jar"的文件是Apache Commons Email 1.4版本的库,它是Java开发者用于发送电子邮件的强大工具。 Apache Commons Email库的核心特性包括: 1. **简单易用的API**:Apache Commons Email ...
虽然这个版本可能没有最新的API和特性,但对于理解邮件发送的基本流程和使用Apache Commons Email库来说,它是一个很好的起点。在实际开发中,确保根据项目的具体需求选择合适的功能,并且注意处理可能出现的异常,...