JavaMail邮件开发的一点小归纳,,我自己也是新手,大佬们别嘲笑啊

来源:互联网 发布:淘宝差评删除外包 编辑:程序博客网 时间:2024/03/29 18:00

MimeBodyPart:表示复杂邮件的一个组成部分,它可以表示文本,附件,图片
 DataHandler:表示可以读取图片或附件
 MimeMultipart:表示二个邮件组成部分的关系,文本和图片的关系是"related"关系
 Content-ID:表示图片的编号

下面是在doc里面发一封邮件,我们其实可以把这些转化成java代码

给出一段复杂邮件的代码,给比我还菜的鸟看看

 

 

//创建一封邮件
  MimeMessage message = new MimeMessage(Session.getDefaultInstance(new Properties()));
  
  //设置From属性
  message.setFrom(new InternetAddress("aaa@zhaojun.com"));
  
  //设置To属性
  message.setRecipient(RecipientType.TO,new InternetAddress("bbb@qq.com"));
  
  //设置Subject属性
  message.setSubject("复杂邮件");
  
  //文本
  MimeBodyPart text = new MimeBodyPart();
  text.setContent("这是一副<br/><img src='cid:imageID'/><br/>图片<br/>","text/html;charset=UTF-8");
  
  //图片
  MimeBodyPart image = new MimeBodyPart();
  DataHandler dh = new DataHandler(new FileDataSource("src/cn/itcast/web/mail/config/神奇的图片.JPG"));
  image.setDataHandler(dh);
  image.setContentID("imageID");
  
  //附件
  MimeBodyPart append = new MimeBodyPart();
  dh = new DataHandler(new FileDataSource("src/cn/itcast/web/mail/config/学员提问.txt"));
  append.setDataHandler(dh);
  append.setFileName(MimeUtility.encodeText(dh.getName()));
  
  //文本+图片
  MimeMultipart mm1 = new MimeMultipart();
  mm1.addBodyPart(text);
  mm1.addBodyPart(image);
  mm1.setSubType("related");

  //将文本+图片封装成邮件的组成部分,即将关系看作成一个部分
  MimeBodyPart temp = new MimeBodyPart();
  temp.setContent(mm1);
  
  //设置和附件的关系
  MimeMultipart mm = new MimeMultipart();
  mm.addBodyPart(temp);
  mm.addBodyPart(append);
  mm.setSubType("mixed");
  
  //设置整个邮件的关系
  message.setContent(mm);
  
  //将该邮件保存的硬盘
  message.writeTo(new FileOutputStream("d:\\demo5.eml"));

 

 

大家应该都看得懂吧,,赫赫。

  小弟最近做的有点头脑不清晰,说话不好听就见谅啊~~

 

原创粉丝点击