`
高军威
  • 浏览: 182158 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java email 发送带附件的邮件

阅读更多
mixed、related 请看 http://360193550.iteye.com/blog/1939073
有一个问题是 163邮箱,设置
MimeMultipart content_body=new MimeMultipart("related");

不管用,直接把内容当作附件显示了!qq 行浪都没有问题,怎么设置下呢,知道的网友给留下言谢谢!分享学习进步!!!
代码:
package com.my.mail;

import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.Message.RecipientType;
import javax.mail.PasswordAuthentication;
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;
import javax.mail.internet.MimeUtility;

import org.apache.log4j.Logger;

/**
 * 发送带附件和本地图片信息的邮件
 * @author
 */
public class Test3 {
	static Logger logger=Logger.getLogger(Test3.class);
	
	public static void main(String[] args) {
		try{
			Properties ps=new Properties();
			ps.put("mail.smtp.auth", "true");
			ps.put("mail.transport.protocol", "smtp");
			ps.put("mail.host", "smtp.qq.com");
			
			Session ss=Session.getInstance(ps, new Authenticator() {
				protected PasswordAuthentication getPasswordAuthentication() {
					return new PasswordAuthentication("A@qq.com","密码");
				}
			});
			
			Message msg=new MimeMessage(ss);
			msg.setFrom(new InternetAddress("\""+MimeUtility.encodeText("神一般的哥")+"\"<A@qq.com>"));
			msg.setSubject("测试自己写客户端发送Email");
			//msg.setRecipients(RecipientType.TO, InternetAddress.parse(MimeUtility.encodeText("#######6@qq.com")+"<gaojunweilove@163.com>"));
			//用逗号分割开来实现群发
			msg.setRecipients(RecipientType.TO, InternetAddress.parse(MimeUtility.encodeText("白白")+"<B@163.com>,"+MimeUtility.encodeText("丫头")+"<C@qq.com>,"+MimeUtility.encodeText("嗨皮")+"<D@sina.com>"));
			
			MimeMultipart content=new MimeMultipart("mixed");
			msg.setContent(content);
			
			MimeBodyPart part_attch01=new MimeBodyPart();
			MimeBodyPart part_attch02=new MimeBodyPart();
			MimeBodyPart part_body=new MimeBodyPart();
			
			content.addBodyPart(part_attch01);
			content.addBodyPart(part_attch02);
			content.addBodyPart(part_body);
			
			DataSource ds01=new FileDataSource("res\\123.jpg");
			DataHandler dh01=new DataHandler(ds01);
			part_attch01.setDataHandler(dh01);
			part_attch01.setFileName(MimeUtility.encodeText("宇智波鼬.jpg"));
			DataSource ds02=new FileDataSource("res\\123.txt");
			DataHandler dh02=new DataHandler(ds02);
			part_attch02.setDataHandler(dh02);
			part_attch02.setFileName(MimeUtility.encodeText("测试文本.txt"));
			MimeMultipart content_body=new MimeMultipart("related");
			part_body.setContent(content_body);
			
			MimeBodyPart content_pic=new MimeBodyPart();
			MimeBodyPart content_html=new MimeBodyPart();
			content_body.addBodyPart(content_pic);
			content_body.addBodyPart(content_html);
			
			DataSource ds_pic=new FileDataSource("res\\456.jpg");
			DataHandler dh_pic=new DataHandler(ds_pic);
			content_pic.setDataHandler(dh_pic);
			content_pic.setHeader("Content-Location", "http://www.baidu.com/img/bdlogo.gif");
			content_pic.setFileName(MimeUtility.encodeText("大蛇丸.jpg"));
			
			content_html.setContent("试试本地图片资源<img src='http://www.baidu.com/img/bdlogo.gif'>", "text/html;charset=gbk");
			
			Transport.send(msg);
			
		}catch(Exception ex){
			logger.debug("===  Exception : Test3 Main ===",ex);
		}
	}
}



所需jar包http://pan.baidu.com/share/link?shareid=2078740269&uk=2248831455
分享到:
评论

相关推荐

    javaemail发送邮件(带附件)

    "javaemail发送邮件(带附件)" javaemail发送邮件(带附件)是使用Java技术实现的邮件发送功能,支持带附件的发送。下面是该功能的知识点总结: 1. 使用JavaMailSenderImpl类来发送邮件,需要设置SMTP服务器、用户名...

    java 发送附件mail

    在Java编程中,发送带有附件的邮件是一项常见的任务,尤其在企业级应用或者自动化脚本中。这个场景通常涉及到JavaMail API的使用,一个强大的库,可以用来处理SMTP(简单邮件传输协议)邮件服务。接下来,我们将深入...

    java email和email附件发送

    3. **添加附件**:如果需要发送附件,可以使用`Multipart`对象来组合文本和附件。创建一个`MimeMultipart`实例,并添加`MimeBodyPart`来表示附件。 ```java MimeBodyPart attachmentPart = new MimeBodyPart(); ...

    java实现发送带有附件的邮件

    以上代码就是一个基本的Java发送带附件邮件的实现。在实际应用中,你可能需要处理更多复杂情况,比如错误处理、SSL/TLS加密、多附件等。通过理解SMTP协议、JavaMail API和MIME规范,你可以轻松地扩展这个基础框架以...

    java发送email邮件.

    demo介绍:http://blog.csdn.net/love_xiolan/article/details/56016576 java发送email邮件 1.发送普通email邮件 2.发送带附件的email邮件 3.邮件抄送和密送 4.发送html邮件 5.发送模板文件

    Java发送带模版的邮件示例

    在Java编程中,发送带有模板的邮件是一项常见的任务,尤其对于企业级应用来说,通过电子邮件进行通知、报告或客户服务是必不可少的。JavaMail API提供了一种标准的方式来处理邮件的发送,而结合模板技术,我们可以...

    java邮件发送(含附件发送)源码

    如果要发送附件,可以使用`Multipart`和`BodyPart`来构建复杂的邮件结构。 ```java Multipart multipart = new MimeMultipart(); // 添加文本正文 BodyPart messageBodyPart = new MimeBodyPart(); ...

    java Exchange收发邮件加附件

    以下是一个简单的发送邮件带附件的Java代码示例: ```java ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); ExchangeCredentials credentials = new WebCredentials(...

    用java开发Email工具之发送邮件

    ### 使用Java开发Email工具之发送邮件 在Java中开发电子邮件工具时,主要依赖于JavaMail API,这是一个功能强大的库,可以实现多种类型的邮件发送、接收等功能。本文将详细介绍如何使用JavaMail API来发送邮件,...

    Java邮件发送.zip

    首先,Java中用于发送邮件的主要API是JavaMail API,它是一个开源库,提供了一组接口和类,允许开发者通过SMTP(简单邮件传输协议)等协议发送邮件。JavaMail API的核心包有`javax.mail`和`javax.mail.internet`,...

    Java发送带附件的邮件

    在Java编程中,发送带有附件的邮件是一项常见的任务,尤其在企业级应用或者自动化脚本中。这篇博客“Java发送带附件的邮件”探讨了如何使用JavaMail API来实现这一功能。JavaMail API是一个开放源码的接口,它允许...

    java发邮件 java发email

    Java发送电子邮件是一个常见的任务,尤其在自动化通知、报表发送或者用户验证等场景中。下面将详细解释如何使用Java来发送邮件,并提供相关的知识点。 首先,Java通过JavaMail API提供了发送邮件的功能。JavaMail ...

    基于Java的邮件发送模板

    使用Apache Commons Email发送带附件的HTML邮件如下: ```java import org.apache.commons.mail.*; Email email = new HtmlEmail(); email.setHostName("smtp.example.com"); email.setSmtpPort(587); email....

    简单Java邮件发送 Java实现邮件发送

    Java邮件发送是一个常见的任务,尤其在自动化通知、订阅服务或者数据报告等场景中。本教程将详细介绍如何使用Java实现邮件发送功能,同时提供了一个Jar包和demo源码供参考。 首先,我们需要理解JavaMail API,这是...

    Java发送outlook邮件

    总之,Java发送Outlook邮件主要涉及JavaMail API的使用,包括配置SMTP服务器、创建邮件对象、设置邮件属性、添加附件和发送邮件。对于Notes邮件,可能需要使用IBM Domino Java API。理解这些概念和技术是Java开发者...

    java email 发送文档

    如果你需要发送带有附件的邮件,可以使用MIME类型处理。例如,如果附件是`incident_email.mp4`,可以这样操作: ```java MimeBodyPart messageBodyPart = new MimeBodyPart(); messageBodyPart.setText("邮件正文...

    Java邮件Email发送的jar包

    这个"Java邮件Email发送的jar包"包含了JavaMail API的核心库,即`javax.mail.jar`。 JavaMail API是一个开源的Java库,它提供了标准的Java API来处理SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息...

    java 发送邮件带附件

    发送邮件到指定邮箱,可以携带附件,html,实现登录验证等功能。

    用EWSAPI在Java中发送Exchange邮件

    本教程将详细介绍如何使用EWS Java API在Java环境中发送Exchange邮件。 首先,你需要安装EWS Java API库,这可以通过Maven或Gradle添加依赖来完成。在Maven的pom.xml文件中,你可以添加以下依赖: ```xml ...

Global site tag (gtag.js) - Google Analytics