社区
Java EE
帖子详情
javaMail 发送附件
lovely_autumn
2011-11-25 02:40:31
请问javaMail
生成附件的数据流不保存在本地硬盘而是直接放入附件发送,这如何实现?
...全文
52
1
打赏
收藏
javaMail 发送附件
请问javaMail 生成附件的数据流不保存在本地硬盘而是直接放入附件发送,这如何实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huangxw000
2011-11-29
打赏
举报
回复
改造的Spring mail发送代附件的邮件:
package com.def.mail.face;
public interface SendMail {
public void send();
}
package com.def.mail;
import java.io.File;
import java.util.Date;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;
import com.def.mail.face.FilePathOfDate;
import com.def.mail.face.SendMail;
public class MailUtils implements SendMail {
private JavaMailSenderImpl senderImpl;
private String replyTo;
private String[] to;
private String[] cc;
private String[] bcc;
private Date sentDate;
private String subject;
private String text;
private String from;
private FilePathOfDate filePathOfDate;
public FilePathOfDate getFilePathOfDate() {
return filePathOfDate;
}
public void setFilePathOfDate(FilePathOfDate filePathOfDate) {
this.filePathOfDate = filePathOfDate;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getReplyTo() {
return replyTo;
}
public void setReplyTo(String replyTo) {
this.replyTo = replyTo;
}
public String[] getTo() {
return to;
}
public void setTo(String[] to) {
this.to = to;
}
public String[] getCc() {
return cc;
}
public void setCc(String[] cc) {
this.cc = cc;
}
public String[] getBcc() {
return bcc;
}
public void setBcc(String[] bcc) {
this.bcc = bcc;
}
public Date getSentDate() {
return sentDate;
}
public void setSentDate(Date sentDate) {
this.sentDate = sentDate;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public JavaMailSenderImpl getSenderImpl() {
return senderImpl;
}
public void setSenderImpl(JavaMailSenderImpl senderImpl) {
this.senderImpl = senderImpl;
}
@Override
public void send() {
MimeMessage mailMessage = senderImpl.createMimeMessage();
try {
MimeMessageHelper messageHelper = new MimeMessageHelper(
mailMessage, true);
if (replyTo != null)
messageHelper.setReplyTo(replyTo);
if (to != null)
messageHelper.setTo(to);
if (cc != null)
messageHelper.setCc(cc);
if (bcc != null)
messageHelper.setBcc(bcc);
if (sentDate != null)
messageHelper.setSentDate(sentDate);
if (subject != null)
messageHelper.setSubject(subject);
if (from != null)
messageHelper.setFrom(from);
if (text != null)
messageHelper.setText(text);
if (filePathOfDate.getFilePathOfDate() != null)
for (String path : filePathOfDate.getFilePathOfDate()) {
FileSystemResource file = new FileSystemResource(new File(
path));
messageHelper.addAttachment(file.getFilename(), file);
}
senderImpl.send(mailMessage);
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
javamail
发送
邮件(带
附件
)
该资源是一个
javamail
发送
邮件的例子,里面集成了别人的文件
发送
的功能,单次
发送
邮件只能上传一个
附件
。是一个测试方法,拿过来改一改邮件的地址和密码就可以使用了
JavaMail
发送
给多人,添加多个
附件
javaMail
SpringBoot2+Mail邮件
发送
系统(邮箱专题)
协议簇,它帮助每台计算机在
发送
或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的
发送
邮件服务器。 SMTP 认证,简单地说就是要求必须在提供了账户名和密码之后才可以登录...
JavaMail
发送
带
附件
的邮件
里面详细的介绍了
JavaMail
发邮件(包括单个
附件
和多个
附件
)的机制,还有
JavaMail
正常使用所需要的JAR包,源程序例子经过本人详细且严格的测试,大家下载下来就可以直接使用啦。
javaMail
用三种方式实现
发送
附件
javaMail
用
附件
路径,文件流 byte[] 或 base64 字符串 实现
发送
附件
功能
Java EE
67,513
社区成员
225,879
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章