资源简介
该java代码包含有
1. 发送一封只包含文本的简单邮件
2.发送包含内嵌图片的邮件
3.发送包含附件的邮件
4.发送包含内嵌图片和附件的复杂邮件
相关配套博文:
https://blog.csdn.net/qq_36474549/article/details/83342615
代码片段和文件信息
package cn.wz.util;
import java.io.FileOutputStream;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
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;
/**
* @Description: 发送包含附件的邮件
*/
public class SendEmail_attachments {
private static String mailFrom = null;// 指明邮件的发件人
private static String password_mailFrom = null;// 指明邮件的发件人登陆密码
private static String mailTo = null; // 指明邮件的收件人
private static String mailTittle = null;// 邮件的标题
private static String mailText = null; // 邮件的文本内容
private static String mail_host = null; // 邮件的服务器域名
private static String photoSrc = null; // 发送图片的路径
public static void main(String[] args) throws Exception {
mailFrom = “test1@wz.com“;
password_mailFrom = “test“;
mailTo = “test2@wz.com“;
mailTittle = “JavaMail邮件发送测试“;
mailText = “使用JavaMail创建的带附件的邮件“;
mail_host = “wz.com“;
photoSrc = “resource\\images\\5.jpg“;
Properties prop = new Properties();
prop.setProperty(“mail.host“ mail_host);// 需要修改
prop.setProperty(“mail.transport.protocol“ “smtp“);
prop.setProperty(“mail.smtp.auth“ “true“);
// 使用JavaMail发送邮件的5个步骤
// 1、创建session
Session session = Session.getInstance(prop);
// 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
session.setDebug(true);
// 2、通过session得到transport对象
Transport ts = session.getTransport();
// 3、连上邮件服务器,需要发件人提供邮箱的用户名和密码进行验证
ts.connect(mail_host mailFrom password_mailFrom);// 需要修改
// 4、创建邮件
Message message = createAttachMail(session);
// 5、发送邮件
ts.sendMessage(message message.getAllRecipients());
ts.close();
}
/**
* @Method: createAttachMail
* @Description: 创建一封带附件的邮件
*/
public static MimeMessage createAttachMail(Session session) throws Exception {
MimeMessage message = new MimeMessage(session);
// 设置邮件的基本信息
message.setFrom(new InternetAddress(mailFrom)); // 发件人
message.setRecipient(Message.RecipientType.TO new InternetAddress(mailTo));// 收件人
// 邮件标题
message.setSubject(mailTittle);
// 创建邮件正文,为了避免邮件正文中文乱码问题,需要使用charset=UTF-8指明字符编码
MimeBodyPart text = new MimeBodyPart();
text.setContent(mailText “text/html;charset=UTF-8“);
// 创建邮件附件
MimeBodyPart attach = new MimeBodyPart();
DataHandler dh = new DataHandler(new FileDataSource(photoSrc));// 需要修改
attach.setDataHandler(dh);
attach.setFileName(dh.getName());
// 创建容器描述数据关系
MimeMultipart mp = new MimeMultipart();
mp.addBodyPart(text);
mp.addBodyPart(attach);
mp.setSubType(“mixed“);
message.setContent(mp);
message.saveChanges();
// 将创建的Email写入到F盘存储
message.writeTo(new FileOutputStream(“F:/Program Files/TestMail/ImageMail.eml“));// 需要修改
// 返回生成的邮件
return message;
}
}
相关资源
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
评论
共有 条评论