0 0

javax.mail发送带图片的邮件的问题0

写了一段发送邮件的代码,但是在只发送图片的时候,接收方收到的邮件显示如下:
javax.mail.internet.MimeBodyPart@b44eb4+图片
这个——javax.mail.internet.MimeBodyPart@b44eb4——怎么回事?是转换出问题吗?而且我当时是有输入文字的,也没显示出来。
相关代码:
MimeMultipart bodyMultipart = new MimeMultipart("related");
msg.setContent(bodyMultipart);
contentBodyPart.setContent(bodyMultipart);
MimeBodyPart htmlPart = new MimeBodyPart();
MimeBodyPart gifPart = new MimeBodyPart();
bodyMultipart.addBodyPart(htmlPart);
bodyMultipart.addBodyPart(gifPart);
htmlPart.setContent(contentBodyPart+"<img src='cid:img1'/>","text/html;charset=utf-8");
realpath = ServletActionContext.getServletContext().getRealPath("mage") ;
DataSource imgDs = new FileDataSource(new File(new File(realpath), imgFileName));
DataHandler imgDh = new DataHandler(imgDs);
gifPart.setDataHandler(imgDh);
gifPart.setFileName(imgFileName);
gifPart.setHeader("Content-ID", "<img1>");
而且图片也会出现在附件里。
2014年5月28日 18:52
  • 大小: 23.4 KB

1个答案 按时间排序 按投票排序

0 0

htmlPart.setContent(contentBodyPart+"<img src='cid:img1'/>","text/html;charset=utf-8"); 

这里不对
你可以创建一个contentBodyPart,然后bodyMultipart.addBodyPart(contentBodyPart);


 MimeMultipart bodyMultipart = new MimeMultipart("related"); 
	        msg.setContent(bodyMultipart);
	        MimeBodyPart contentBodyPart = new MimeBodyPart();
	        contentBodyPart.setContent("ddddddttt", "text/html;charset=utf-8");
	        
	        MimeBodyPart htmlPart = new MimeBodyPart(); 
	        MimeBodyPart gifPart = new MimeBodyPart(); 
	        bodyMultipart.addBodyPart(contentBodyPart);
	        bodyMultipart.addBodyPart(htmlPart); 
	        bodyMultipart.addBodyPart(gifPart); 
	        htmlPart.setContent("<img src='cid:img1'/>","text/html;charset=utf-8"); 
	        DataSource imgDs = new FileDataSource(new File(new File("J:\\个人文件\\生活\\图片\\我的收藏"), "2.jpg")); 
	        DataHandler imgDh = new DataHandler(imgDs); 
	        gifPart.setDataHandler(imgDh); 
	        gifPart.setFileName("2.jpg"); 
	        gifPart.setHeader("Content-ID", "<img1>"); 
	          
	        
	        Transport.send(msg);

2014年5月28日 22:09

相关推荐

    基于Maven的javax.mail发送邮件例子程序

    基于Maven的javax.mail发送邮件例子程序 pom.xml添加依赖jar: &lt;groupId&gt;javax.mail &lt;artifactId&gt;mail ${javamail.version} &lt;/dependency&gt; &lt;javamail.version&gt;1.4.1&lt;/javamail.version&gt; /* 功能:...

    javax.mail-1.4.4.jar

    通过java扩展包javax.mail-1.4.4.jar实现邮件发送功能。 import javax.mail.Address; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Multipart...

    javax.mail-1.6.0.jar包及移入maven仓库语句

    要使用`javax.mail`发送邮件,你需要配置一个`Properties`对象,设置SMTP服务器信息,然后创建`Session`对象。之后,你可以创建`Message`对象,填充邮件内容,最后通过`Transport`对象发送邮件。例如: ```java ...

    javax.mail.jar-Java发送邮件API

    javax.mail.jar-Java发送邮件API。Apache Email基于javax.mail做了一个开源项目,参见:http://commons.apache.org/proper/commons-email/

    javax.mail.jar下载

    标题 "javax.mail.jar下载" 指出,开发者可能遇到了缺少这个库的问题,导致在尝试发送邮件时遇到错误。这通常是因为项目中没有正确地引入JavaMail相关的依赖,或者使用的版本不支持某些特定的邮件服务功能。 描述 ...

    javax.mail发送邮件

    根据提供的文件信息,我们可以深入探讨...以上就是使用`javax.mail`发送邮件的整个流程。通过这种方式,我们可以轻松地集成邮件发送功能到Java应用中,无论是简单的通知邮件还是复杂的批量邮件发送场景都能应对自如。

    采用javax.mail发送邮件,可以发送附件

    采用javax.mail发送邮件,可以发送附件

    javax.mail java 发送邮件的实现

    在Java编程语言中,`javax.mail` 是一个标准的API,用于发送和接收电子邮件。这个API为开发者提供了处理SMTP(简单邮件传输协议)、POP3(邮局协议版本3)和IMAP(因特网消息访问协议)等邮件服务的能力。在本篇中,...

    javax.mail-1.6.2_javamailjar1.6.2_javamail-1.6.2_javax.mail_java

    `javax.mail-1.6.2_javamailjar1.6.2_javamail-1.6.2_javax.mail_java` 这个标题暗示了我们正在讨论的是 JavaMail 的 1.6.2 版本,这是一个稳定且广泛使用的版本。 JavaMail API 提供了一套标准的接口,用于与邮件...

    java 基于javax.mail的邮件发送测试工具

    基于javax.mail的邮件发送测试工具

    javax.mail.1.4.7.jar

    1. **Transport API**:这是发送邮件的主要接口,允许开发者通过SMTP(Simple Mail Transfer Protocol)协议将邮件发送到邮件服务器。Transport类提供了发送已构造好的Message对象的方法。 2. **Store API**:该API...

    javax.mail-1.5.2源码

    7. **Protocol Support**: `javax.mail` 支持多种邮件协议,如POP3(Post Office Protocol v3)用于接收邮件,SMTP(Simple Mail Transfer Protocol)用于发送邮件,以及IMAP(Internet Message Access Protocol)...

    java发送邮件依赖包javax.mail.jar和activation.jar.zip

    Java发送邮件是开发中常见的一项任务,特别是...以上就是Java使用javax.mail.jar和activation.jar发送邮件的基本知识。这两个库的结合使用极大地简化了邮件操作,使得Java开发者能够方便地集成邮件功能到自己的应用中。

    javax.mail.AuthenticationFailedException异常

    javax.mail.AuthenticationFailedException异常处理。

    javax.mail发送邮件所需要jar及简单demo

    在这个场景中,我们主要关注`javax.mail`库以及如何通过它来发送邮件。 首先,`javax.mail.jar`是Java Mail API的核心库,它提供了邮件处理的各种接口和类。这个库包含了创建、发送、接收和管理电子邮件所需的所有...

    发邮件程序需要的:javax.mail包

    发邮件程序需要的:javax.mail包

    javamail1.4.5和javax.mail-1.5.5.jar

    使用JavaMail时,开发者需要添加相应的jar包到类路径中,然后通过导入相应的包,创建和配置Session,建立与邮件服务器的连接,创建Message,设置邮件属性,最后通过Transport发送邮件。对于接收邮件,需要获取Store...

    javax.mail.jar

    《Java邮件API(javax.mail)详解》 在Java编程领域,`javax.mail.jar`是一个重要的库文件,它包含了Java Mail API的所有类和接口,用于处理电子邮件的发送和接收。Java Mail API是Java平台上的标准API,它允许开发...

    JAVA发送邮件demo 代码 及jar包 javax.mail.jar

    在Java中,`javax.mail.Transport` 类负责通过SMTP服务发送邮件。开发者需要配置SMTP服务器的地址、端口以及认证信息(如用户名和密码)。 4. **创建邮件**: 使用`javax.mail.internet.MimeMessage` 类可以创建...

    javax.mail发送接收email代码

    转载的资源,java语言写的,利用javax.mail写的上传下载文件的source代码,利用stmp发送邮件,利用pop3接收邮件。一般能上网情况下都可以运行成功,但是注意在公司里由于公司经常会进行一些限制,所以有时候会连接...

Global site tag (gtag.js) - Google Analytics