老本家
http://java.sun.com/products/javamail/index.jsp
developerworks 的教程 JavaMail API 基础
https://www6.software.ibm.com/developerworks/cn/education/java/j-javamail/tutorial/index.html
本地下载
JavaMail FAQ: 好东西
http://java.sun.com/products/javamail/FAQ.html
无中文困挠的使用JavaMail收取邮件
http://www.javayou.com/showlog.jspe?log_id=372
使用JavaMail的邮件发送组件
http://www.javayou.com/showlog.jspe?log_id=136
最后一个就是简化了javamail开发的。
Jakarta Commons Emails
---------------------------------------------------------------------------------
以前写的一篇介绍:
《简化JavaMail:小巧 Jakarta Commons-Email 简单教程 》
顺便再整理一下,朋友讨论的关于一些jakarta commons email出现乱码的问题:
一:通过SimpleEmail发送中文内容出现乱码的问题
SimpleEmail的代码如下
1public class SimpleEmail extends Email {
2 /**
3 * Set the content of the mail
4 *
5 * @param msg A String.
6 * @return An Email.
7 * @throws EmailException see javax.mail.internet.MimeBodyPart
8 * for definitions
9 * @since 1.0
10 */
11 public Email setMsg(String msg) throws EmailException {
12 if (EmailUtils.isEmpty(msg)) {
13 throw new EmailException("Invalid message supplied");
14 }
15 setContent(msg, Email.TEXT_PLAIN);
16 return this;
17 }
18}
只是采用默认的,
并没有指定编码。
如果通过SimpleEmail发送,需要指定编码:Water Ye@ITO 的说明
二:关于附件中文名称乱码的问题:
需使用MimeUtility
原因是在MIME的相应规范中(RFC2047等)说明了附件标题必须是US-ASCII字符, 所以在发送中文标题的附件时需要编码成US-ASCII字符, 有两种编码方式: B (BASE64), Q (Quoted-Printable), 这些方法在MimeUtility里
都已经做了封装, 所以在发送附件时使用如下:
end
---------------------------------------------------------------------------------
我想这些资源已经足够 o_o
你还想知道什么:)
2 /**
3 * Set the content of the mail
4 *
5 * @param msg A String.
6 * @return An Email.
7 * @throws EmailException see javax.mail.internet.MimeBodyPart
8 * for definitions
9 * @since 1.0
10 */
11 public Email setMsg(String msg) throws EmailException {
12 if (EmailUtils.isEmpty(msg)) {
13 throw new EmailException("Invalid message supplied");
14 }
15 setContent(msg, Email.TEXT_PLAIN);
16 return this;
17 }
18}
只是采用默认的,
1public static final String TEXT_PLAIN = "text/plain";
并没有指定编码。
如果通过SimpleEmail发送,需要指定编码:Water Ye@ITO 的说明
1email.setContent("测试邮件", "text/plain;charset=GBK");
二:关于附件中文名称乱码的问题:
需使用MimeUtility
原因是在MIME的相应规范中(RFC2047等)说明了附件标题必须是US-ASCII字符, 所以在发送中文标题的附件时需要编码成US-ASCII字符, 有两种编码方式: B (BASE64), Q (Quoted-Printable), 这些方法在MimeUtility里
都已经做了封装, 所以在发送附件时使用如下:
1MimeUtility.encodeText(filename));
1 EmailAttachment attachment = new EmailAttachment();
2 attachment.setPath("c:\测试.txt");
3 attachment.setDisposition(EmailAttachment.ATTACHMENT);
4 attachment.setDescription("测试文件");
5
6 //
7 attachment.setName(MimeUtility.encodeText("测试文件.txt"));
8
9 MultiPartEmail email = new MultiPartEmail();
10 email.setHostName("192.168.0.3");
11 email.setAuthentication("martin.xus", "1234");
12 email.addTo("martin.xus@192.168.0.3", "martin");
13 email.setFrom("martin.xus@192.168.0.3", "martin");
14
15 email.setSubject("测试带附件");
16 email.setMsg("该邮件含附件");
17 //添加附件
18 email.attach(attachment);
19 //发送邮件
20 email.send();
2 attachment.setPath("c:\测试.txt");
3 attachment.setDisposition(EmailAttachment.ATTACHMENT);
4 attachment.setDescription("测试文件");
5
6 //
7 attachment.setName(MimeUtility.encodeText("测试文件.txt"));
8
9 MultiPartEmail email = new MultiPartEmail();
10 email.setHostName("192.168.0.3");
11 email.setAuthentication("martin.xus", "1234");
12 email.addTo("martin.xus@192.168.0.3", "martin");
13 email.setFrom("martin.xus@192.168.0.3", "martin");
14
15 email.setSubject("测试带附件");
16 email.setMsg("该邮件含附件");
17 //添加附件
18 email.attach(attachment);
19 //发送邮件
20 email.send();
end
---------------------------------------------------------------------------------
我想这些资源已经足够 o_o
你还想知道什么:)
相关推荐
这个版本1.6.4的jar文件包含了Ant任务所需的JavaMail相关类和资源,使得Ant能够在构建过程中执行邮件相关的操作,如发送构建报告、错误通知等。 压缩包中的"ant.license.txt"文件通常包含了Apache Ant的许可协议...
JavaMail 是一个开源的 Java API,它为Java程序员提供了邮件收发功能,使得开发者能够方便地集成电子邮件功能到他们的应用程序中。...通过深入研究和利用这些资源,开发者能够构建出高效、安全且功能丰富的邮件应用。
这个“javamail-1.4.7.rar”压缩包包含了JavaMail 1.4.7版本的源码、库文件和其他相关资源,使得开发者能够集成到他们的应用程序中,实现发送、接收和管理电子邮件的功能。 JavaMail 1.4.7 版本是一个稳定且广泛...
这个"javamail-1.4.1.rar"压缩包包含的是JavaMail 1.4.1版本的源码、API文档及相关资源,是开发人员在进行邮件操作时不可或缺的工具。JavaMail API 提供了丰富的功能,包括创建、读取、发送邮件,支持SMTP、POP3和...
3. **additionnal.jar**: 这可能是一个第三方提供的扩展库,通常包含了一些额外的功能或者对JavaMail核心库的增强。具体功能可能因版本和提供者而异,可能包含更丰富的邮件处理特性、特定服务提供商的支持或者其他...
这个名为“javamail-1.4.5.rar”的压缩包包含了JavaMail 1.4.5版本的源码、类库和其他相关资源,使得开发者能够轻松地在他们的项目中集成电子邮件功能。JavaMail 提供了丰富的API,支持SMTP、POP3、IMAP等多种邮件...
2. 处理MIME消息,支持多部分消息和嵌入式资源。 3. 支持加密连接(SSL/TLS)和身份验证。 4. 提供了邮件监听器,可以实时接收新邮件。 使用JavaMail发送邮件的示例代码如下: ```java Properties props = System....
在本例中,可以从CSDN等资源网站下载并添加到项目的类路径下。\n\n为了启用SMTP服务,需要在QQ邮箱设置中开启SMTP功能,并获取SMTP用户名和密码。然后,使用以下步骤编写Java代码来发送邮件:\n\n1. 定义配置属性:...
记得在发送完毕后关闭`Transport`以释放资源。 总结起来,通过SSM框架结合Javamail,我们可以方便地在Java应用中实现实时的邮件发送功能。这不仅适用于系统通知、用户验证等场景,也可以作为企业级应用中的一种通信...
JavaMail 是一个开源的 Java API,它为Java开发者提供了处理电子邮件的能力。这个API允许开发者发送、接收、管理邮件,包括附件、HTML 内容、MIME 多部分消息等。`javamail.jar` 文件是JavaMail的核心库,包含了所有...
JavaMail 是一个开源的 Java API,它允许开发者在 Java 应用程序中发送和接收电子邮件。...通过这些资源,开发者可以快速上手,实现邮件功能,无论是简单的邮件发送,还是复杂的邮件服务应用,都能轻松应对。
6. **附件与嵌入式资源**:JavaMail允许在邮件中添加附件和嵌入图片,通过`MimeBodyPart`和`MimeMultipart`类可以轻松实现。 7. **多部分消息**:`MimeMultipart`类用于构建包含多个部分的消息,例如,同时包含纯...
这个“javamail资料.zip”压缩包很可能包含了关于 JavaMail 的详细教程、示例代码、API 文档和其他相关资源,帮助开发者学习和理解如何在 Java 应用程序中集成邮件功能。 JavaMail 的核心组件包括 javax.mail 和 ...
总的来说,这个压缩包提供了一整套的JavaMail开发资源,包括最新的JavaMail库、JAF组件、详细的API文档(英文和中文),以及一个可能的中文详解。对于想要在Java环境中开发邮件功能的开发者来说,这是一个非常全面的...
这个“javamail-1_4.zip”文件包含的是JavaMail 1.4版本的源代码、API文档和其他相关资源,使得开发者能够在J2SE环境中开发与邮件相关的应用,而无需额外安装。J2EE平台虽然自身集成了邮件服务支持,但对于J2SE环境...
这个“javaMail20090818151851.rar”压缩包可能包含了使用 JavaMail 进行邮件操作的示例代码和相关资源。在本文中,我们将深入探讨 JavaMail API 的核心概念、使用场景以及如何利用它来实现邮件的收发。 1. **...
以下是一些使用JavaMail的关键知识点: 1. **Session**:JavaMail的核心组件,用于设置配置信息,如SMTP服务器地址、用户名、密码等。 2. **Message**:表示一封邮件,包含发件人、收件人、主题、正文和附件等信息...
additionnal.jar通常包含了一些额外的类和资源,这些可能不是JavaMail的核心部分,但对扩展和增强邮件处理功能非常有帮助。例如,它可能包含了支持特定邮件协议或者提供特定功能(如HTML邮件处理)的类库。具体包含...
JavaMail 还集成了其他一些库,比如 JAF (JavaBeans Activation Framework),用于处理邮件附件的类型识别和激活。 12. **可扩展性**: 通过实现 JavaMail 提供的接口,开发者可以自定义行为,如提供新的认证策略...
这个“javamail-1.5.4-src.zip”文件包含了JavaMail 1.5.4版本的源代码,是理解其内部工作原理和进行定制开发的重要资源。在深入探讨这个压缩包的内容之前,我们先来了解一下JavaMail的基本概念。 JavaMail API ...