javamail入门3--发送带有附件的邮件
这个例子是发送附件邮件的,到目前为止javamail的邮件发送操作基本可以满足大部分需求了
String smtp_host = "smtp.faw.com.cn"; // 提供发送服务的邮件服务器
String user = "usrname"; // 邮件服务器登录用户名
String password = "password"; // 邮件服务器登录密码
String from = "usrname@faw.com.cn"; // 发送人邮件地址
String to = "test@gmail.com"; // 收件人邮件地址
String subject = "我的第一封邮件"; // 邮件标题
String content = "<font style=\"BACKGROUND-COLOR: #666699\" color=\"#ff0000\" size=\"5\">我是<a href=\"llying.iteye.com\">超文本</a></font>";//超文本内容
try {
Properties props = new Properties();
//Session类定义了基本的邮件会话。就像Http会话那样,我们进行收发邮件的工作都是基于这个会话的。
Session session = Session.getInstance(props, null);
//由于Message是 一个抽象类,大多数情况下,我们使用javax.mail.internet.MimeMessage这个子类
MimeMessage message = new MimeMessage(session);
InternetAddress fromAddress = new InternetAddress(from);
message.setFrom(fromAddress);
InternetAddress toAddress = new InternetAddress(to);
message.addRecipient(Message.RecipientType.TO, toAddress);
message.setSubject(subject);
//创建Multipart的容器
Multipart multipart = new MimeMultipart();
//创建第一部分,正文部分
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setContent(content, "text/html;charset=gbk");//给BodyPart对象设置内容和格式/编码方式
//插入正文部分
multipart.addBodyPart(messageBodyPart);
//创建第二部分,文件部分
messageBodyPart = new MimeBodyPart();
// 获得附件
DataSource source = new FileDataSource("D:\\workspace\\fwk\\javamail\\lib.zip");
//设置附件的数据处理器
messageBodyPart.setDataHandler(new DataHandler(source));
//设置附件名
messageBodyPart.setFileName("D:\\workspace\\fwk\\javamail\\lib.zip");
//将附件插入
multipart.addBodyPart(messageBodyPart);
/**
* 上面的附件插入可以进行循环插入多个
*/
//将多部分内容放到e-mail中
message.setContent(multipart);
//保存对于e-mail的修改
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(smtp_host, user, password);
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
transport.close();
} catch(Exception m) {
m.printStackTrace();
}
分享到:
相关推荐
这个入门教程将带你了解如何使用 JavaMail 来发送简单的文本邮件。在开始之前,你需要确保已经添加了 JavaMail 相关的库,这里提到的 "lib" 文件可能包含了这些必要的 JAR 包。 首先,你需要引入 JavaMail 的核心库...
要发送带附件的邮件,我们首先创建一个`MimeMessage`实例,然后使用`MimeBodyPart`来表示每个附件。`Multipart`对象可以包含多个`MimeBodyPart`,并代表邮件的多部分内容。通常,我们会使用`MimeMultipart`的`...
这个“javamail-1.4.4”版本是 JavaMail 的一个稳定版本,提供了丰富的功能和改进,适用于各种邮件系统。在这款组件的帮助下,开发者可以轻松地集成邮件功能到他们的应用程序中,而无需深入了解 SMTP、POP3 或 IMAP ...
3. **添加附件**:如果需要发送附件,可以使用`MimeBodyPart`类创建一个包含附件的新部分,并将其添加到`Multipart`对象中。`MimeMultipart`类允许我们组合多个邮件部分,包括文本和附件。 4. **处理中文内容**:...
在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在邮件中包含多媒体内容,如图片、文档、音频或视频文件等。 在JavaMail中,`...
JavaMail和Apache Commons Email是两个在Java环境中广泛使用的库,用于发送电子邮件。这两个库提供了丰富的功能,使得开发者能够轻松地实现复杂邮件的发送,包括文本邮件、HTML邮件、附件、多部分消息等。 JavaMail...
本教程将详细讲解如何使用JavaMail API在Gmail上发送邮件,包括不带附件和带有一个附件的情况。 首先,JavaMail是一个开源的Java库,它提供了用于处理邮件的标准API。在使用JavaMail发送邮件前,你需要在项目中引入...
总的来说,`javamail`和`commons-mail`为Java开发者提供了方便的工具来处理电子邮件的发送,包括HTML邮件、附件、多部分消息和更多复杂功能。通过深入理解这些库的工作原理,你可以轻松地将电子邮件集成到任何Java...
JavaMail邮件发送(带附件)
geronimo-spec-javamail-1.3.1-rc3 java实现 发送mail工具包之一
5. **发送带附件的邮件** - 使用`Multipart`对象,添加额外的`MimeBodyPart`来处理附件。 - 示例代码: ```java MimeBodyPart attachmentPart = new MimeBodyPart(); attachmentPart.attachFile("path/to/...
1.javamail1.4 2.common-mail-1.1 3.james-binary-2.3.1 运用以上三种组件实现发送邮件 在发送邮件时,出现javax.mail.AuthenticationFailedException时 怎么解决,请看此。。。
发送带有附件的邮件主要涉及以下步骤: 1. **初始化Properties对象**:设置SMTP服务器的属性,如主机名、端口、认证方式等。 ```java Properties props = new Properties(); props.put("mail.smtp.host", ...
它支持多种邮件协议,如SMTP(简单邮件传输协议)、POP3(邮局协议第三版)和IMAP(因特网消息访问协议),以及MIME(多用途互联网邮件扩展)格式,允许处理复杂的邮件附件和编码。 这个1.5.4版本的源代码中包含的...
标签:ant-javamail-1.9.4-sources.jar,ant,javamail,1.9.4,sources,jar包下载,依赖包
对于本文提到的“JavaMail使用总结---3”,可能涵盖了更高级或特定的JavaMail用法,例如使用SSL/TLS加密通信、处理邮件附件、读取邮件、解析邮件头等。由于没有具体的博客内容,这部分无法提供详细讲解,但这些都是...
javamail-api-doc-1.4.4,java邮件开发api文档,chm格式版本,方便查阅
这个资源提供了一个具体的示例,展示了如何使用JavaMail API 来发送带有附件的邮件。以下是对这个主题的详细解释: 首先,你需要理解JavaMail的核心组件。`javax.mail` 和 `javax.mail.internet` 包含了发送邮件所...
在JavaMail中,发送带有背景音乐和背景图片的邮件涉及到HTML格式的邮件内容以及MIME技术的使用。以下是对这个主题的详细说明: 首先,JavaMail API 是Java平台上的一个库,它允许开发者通过SMTP(简单邮件传输协议...