利用javaMail创建一个简单邮件
代码如下:
public static void main(String[] args) throws Exception{
//1、创建邮件
//设置属性
Properties props = new Properties();
//创建session
Session session = Session.getInstance(props);
//创建message邮件
MimeMessage message = new MimeMessage(session);
//2、设置邮件属性
//邮件来自哪
message.setFrom(new InternetAddress("aa@tongfang.com"));
//邮件发到哪
message.setRecipient(Message.RecipientType.TO, new InternetAddress("bb@tongfang.com"));
//邮件的主题
message.setSubject("Hi");
//3、正文
MimeBodyPart part = new MimeBodyPart();
part.setContent("你知道我是谁不?", "text/html;charset=gb2312");
//4、描述关系
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(part);
//设置
message.setContent(mm);
message.saveChanges();
message.writeTo(new FileOutputStream("D:\\1.eml"));
}
利用JavaMail创建一个包含图片的邮件
代码如下:
public class MimeImageMail {
public static void main(String[] args)throws Exception {
//1、创建邮件
//MimeMessage message = new MimeMessage(Session.getInstance(new Properties()));
//设置属性
Properties props=new Properties();
//创建session对象
Session session=Session.getInstance(props);
//创建邮件对象
MimeMessage message=new MimeMessage(session);
//2、设置邮件属性
//邮件来自哪message.setFrom(new InternetAddress(""));
message.setFrom(new InternetAddress("aa@tongfang.com"));
//邮件发去哪message.setRecipient(Message.RecipientType.TO, new InternetAddress(""));
message.setRecipient(Message.RecipientType.TO, new InternetAddress("bbi@tongfang.com"));
//主题message.setSubject("");
message.setSubject("看看这是谁啊!");
//3、创建正文MimeBodyPart text=new MimeBodyPart();
MimeBodyPart text = new MimeBodyPart();
text.setContent("呵呵,这小妞长的真俊啊,谁家的啊!<br/><br/><img src='cid:xx.jpg'>是不错吧", "text/html;charset=utf-8");
//4、创建一个图片MimeBodyPart image=new MimeBodyPart();
MimeBodyPart image = new MimeBodyPart();
image.setDataHandler(new DataHandler(new FileDataSource("src\\f.jpg")));
image.setContentID("xx.jpg");
//创建描述关系
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(text);
mm.addBodyPart(image);
//设置关系
mm.setSubType("related");//表示消息体中的内容是关联(依赖)组合类型,表示消息体中的某些内容,依赖另外的资源。
message.setContent(mm);
message.saveChanges();
message.writeTo(new FileOutputStream("D:\\2.eml"));
}
}
利用JavaMail创建一个包含附件的邮件
代码如下:
public class AttchMime {
public static void main(String[] args)throws Exception {
//1、创建邮件
MimeMessage message = new MimeMessage(Session.getInstance(new Properties()));
//2、设置邮件属性
message.setFrom(new InternetAddress("aa@tongfang.com"));
message.setRecipient(Message.RecipientType.TO, new InternetAddress("bb@tongfang.com"));
message.setSubject("听听这首音乐");
//3、正文
MimeBodyPart text= new MimeBodyPart();
//文本的设置
text.setContent("我这有一首很好听的音乐,一起分享一下吧<br/><br/><br/>如果感觉不错就回复一下吧", "text/html;charset=utf-8");
//附件
MimeBodyPart attch= new MimeBodyPart();
//附件的设置
attch.setDataHandler(new DataHandler(new FileDataSource("src\\1.mp3")));
attch.setFileName("1.mp3");
//4、描述关系
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(text);
mm.addBodyPart(attch);
//设置关系
mm.setSubType("mixed");//表示消息体中的内容是混合组合类型,可以是文本,声音和附件等不同邮件内容的混合体。
message.setContent(mm);
message.saveChanges();
message.writeTo(new FileOutputStream("d:\\3.eml"));
}
}
利用javaMail创建一个包含两张图片的邮件
代码如下:
public class MimeImage {
public static void main(String[] args)throws Exception {
//创建邮件
MimeMessage message=new MimeMessage(Session.getInstance(new Properties()));
//设置属性
message.setFrom(new InternetAddress("aa@tongfang.com"));
message.setRecipients(Message.RecipientType.TO, "bb@tongfang.com");
message.setSubject("好多图片啊");
//设置正文
MimeBodyPart text=new MimeBodyPart();
text.setContent("这有好多图片<br/><img src='cid:xx.jpg'><br/><img src='cid:yy.jpg'><br/>选一张吧", "text/html;charset=utf-8");
//设置图片
MimeBodyPart image=new MimeBodyPart();
image.setDataHandler(new DataHandler(new FileDataSource("src\\f.jpg")));
image.setContentID("xx.jpg");
MimeBodyPart image1=new MimeBodyPart();
image1.setDataHandler(new DataHandler(new FileDataSource("src\\x.jpg")));
image1.setContentID("yy.jpg");
//描述关系
//图片与正文的描述关系
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(text);
mm.addBodyPart(image);
mm.addBodyPart(image1);
mm.setSubType("related");
message.setContent(mm);
message.saveChanges();
message.writeTo(new FileOutputStream("d:\\4.eml"));
}
}
利用JavaMail创建一个既包含图片又包含附件的邮件
代码如下:
public class MimeImageAttch {
public static void main(String[] args)throws Exception {
//1、创建邮件
MimeMessage message=new MimeMessage(Session.getInstance(new Properties()));
//2、设置属性
message.setFrom(new InternetAddress("aa@tongfang.com"));
message.setRecipients(Message.RecipientType.TO, "bb@tongfang.com");
message.setSubject("既有图片又有附件");
//3、设置正文
MimeBodyPart text=new MimeBodyPart();
text.setContent("这有好多图片<br/><img src='cid:xx.jpg'><br/><img src='cid:yy.jpg'><br/>选一张吧", "text/html;charset=utf-8");
//4、设置图片
MimeBodyPart image=new MimeBodyPart();
image.setDataHandler(new DataHandler(new FileDataSource("src\\f.jpg")));
image.setContentID("xx.jpg");
MimeBodyPart image1=new MimeBodyPart();
image1.setDataHandler(new DataHandler(new FileDataSource("src\\x.jpg")));
image1.setContentID("yy.jpg");
//5、设置附件
MimeBodyPart attch = new MimeBodyPart();
DataHandler dh1 = new DataHandler(new FileDataSource("src\\大笑.mp3"));
attch.setDataHandler(dh1);
String filename = dh1.getName();
attch.setFileName(MimeUtility.encodeText(filename));
//6、描述关系
//图片与正文的描述关系
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(text);
mm.addBodyPart(image);
mm.addBodyPart(image1);
mm.setSubType("related");
//图片与正文的 bodypart
MimeBodyPart part = new MimeBodyPart();
part.setContent(mm);
//附件与以上的bodypart关系
MimeMultipart m = new MimeMultipart();
m.addBodyPart(part);
m.addBodyPart(attch);
m.setSubType("mixed");
//把MIME消息设置到message中
message.setContent(m);
message.saveChanges();
message.writeTo(new FileOutputStream("d:\\5.eml"));
}
}
//附件
MimeBodyPart attch= new MimeBodyPart();
//附件的设置
attch.setDataHandler(new DataHandler(new FileDataSource("src\\1.mp3")));
attch.setFileName("1.mp3");
如果上边代码中的附件标题是中文的就会出现乱码问题,下面的代码就解决了乱码问题
//附件
MimeBodyPart attch = new MimeBodyPart();
DataHandler dh1 = new DataHandler(new FileDataSource("src\\大笑.mp3"));
attch.setDataHandler(dh1);
String filename = dh1.getName();
attch.setFileName(MimeUtility.encodeText(filename));
分享到:
相关推荐
JavaMail API 是一个开源的Java库,用于处理电子邮件的创建、发送和接收。这个API提供了一组接口和类,使得开发者能够直接与SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)服务器进行交互...
2. **获取Session对象**:使用`Properties`对象创建一个`Session`实例,它是邮件会话的容器,可以存储邮件发送的配置信息。 3. **创建Message对象**:通过`Session`对象创建一个`Message`实例,这代表了你要发送的...
接下来,创建一个简单的JavaMail发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; import java.util.Properties; public class JavaMailSender { public static void main...
本文将详细探讨如何在Spring环境中,利用JavaMail和Quartz库实现定时发送邮件的功能。 #### JavaMail简介 JavaMail API是一个允许Java应用程序读取和发送邮件的工具包。它提供了与不同邮件协议(如SMTP、POP3和...
JavaMail 是一个开源的Java库,它为Java应用程序提供了API,用于处理电子邮件的发送和接收。这个实例将向我们展示如何使用JavaMail API在Java中实现邮件发送功能。以下是详细的步骤和相关知识点: 1. **JavaMail ...
通过这些核心概念和方法,开发者可以利用JavaMail在各种应用场景中实现功能丰富的邮件服务,无论是简单的日志报告,还是复杂的业务通知,都能轻松应对。在实际开发中,可以根据项目需求对JavaMail的功能进行扩展和...
在本篇文章中,我们将深入探讨如何利用JavaMail API发送邮件,以及在实际应用中可能遇到的关键知识点。 首先,JavaMail的核心组件包括`javax.mail`和`javax.mail.internet`这两个包。`javax.mail`包含了处理邮件...
JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。它提供了一组API,使得开发者可以方便地处理SMTP、POP3和IMAP等邮件协议。在JavaMail环境下发送邮件,首先需要确保正确配置了环境,这通常...
开发者需要配置一个`Properties`对象来设置SMTP或IMAP服务器的参数,然后创建`Session`实例。 2. **连接设置**: 使用IMAP时,需要知道Exchange 2007服务器的IMAP端口号(通常是993,使用SSL加密)。此外,还需要...
2. **创建邮件消息**:使用邮件会话实例创建一个`MimeMessage`对象,设置发件人、收件人、抄送人、密送人、邮件主题和邮件正文等信息。 3. **设置邮件属性**:可以设置邮件的优先级、日期、附件等属性,这通常涉及...
JavaMail 是一个强大的开源库,专门用于在Java应用程序中发送和接收电子邮件。它提供了丰富的API,使得开发者可以方便地处理SMTP、POP3和IMAP等邮件协议。在JavaMail中,我们可以实现各种复杂的邮件功能,如添加附件...
标签“java发送邮件”意味着此示例主要关注Java语言中发送邮件的功能,而“javamail邮箱发送”则表明我们利用JavaMail库来实现这一功能。这个过程涉及到Java网络编程和邮件协议的理解,如SMTP(简单邮件传输协议)和...
JavaMail API 是一个用于读取、撰写和发送电子邮件的强大工具包。它主要用于构建邮件用户代理程序(Mail User Agent,简称 MUA),这类程序通常包括像 Eudora、Foxmail 和 MS Outlook Express 这样的邮件客户端。与...
这个项目“基于javamail的电子邮件系统的设计与实现”显然涵盖了如何利用JavaMail库构建一个非Web的、基于Java客户端的邮件系统,特别是与腾讯邮件系统对接的部分。 在设计这样的系统时,开发者首先需要理解SMTP...
总结来说,JavaMail邮件管理系统是通过JavaMail API利用SMTP和IMAP协议实现邮件的收发功能,它为开发者提供了一个强大且灵活的工具集,以构建高效、可靠的邮件应用。开发者可以根据需求扩展功能,如邮件过滤、自动...
总之,"JavaMail(JAVA邮件服务器)API详解"这个资源将提供一个全面的指南,帮助Java开发者充分利用JavaMail API来构建高效、可靠的邮件系统,无论是简单的日志报告还是复杂的邮件应用,都能得心应手。通过深入学习和...
综上所述,通过JavaMail API和JSP,我们可以实现一个简单的Web应用,让用户通过网页发送电子邮件。提供的项目文件`emailSend`可能包含了这个完整的工作流程,包括Servlet和JSP页面,你可以下载并运行以进一步学习和...
总的来说,"Android使用javamail发送邮件"这个主题涵盖了Android平台上利用JavaMail API实现邮件发送的基本流程和注意事项,包括设置SMTP服务器、构建邮件消息、处理附件以及可能的安全性和用户体验优化。...
二是利用JavaMail API与实际的邮件服务器通信,执行发送和接收邮件的任务。最后,数据层,这是系统的核心,负责存储所有的邮件数据和其他相关信息。 邮件系统的核心功能包括: 1. 邮件发送:用户可以通过系统编辑...
例如,设计一个简单的Web邮件系统,包括用户注册、登录、发送邮件、接收邮件等功能,并结合实际需求,探讨如何更好地集成JavaMail API,提高系统的稳定性和用户体验。 #### 八、总结与展望 基于JavaMail的Web邮件...