课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 达内新闻 > JavaMail邮件开发中带图片的邮件
  • JavaMail邮件开发中带图片的邮件

    发布:昆明Java培训      来源:达内新闻      时间:2016-10-24

  • 昆明达内Java培训的老师今天给大家讲带有图片的邮件。

    a、复杂邮件封装模型

    代码事例

    package com.lyh.sendemail;

    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;

    //发送邮件

    public class MessageDemo2 {

    public static void main(String[] args) throws Exception{

    Properties props = new Properties();//key value:配置参数。真正发送邮件时再配置

    props.setProperty("mail.transport.protocol", "smtp");//指定邮件发送的协议,参数是规范规定的

    props.setProperty("mail.host", "smtp.163.com");//指定发件服务器的地址,参数是规范规定的

    //       props.setProperty("mail.debug", "true");//邮件发送的调试模式,参数是规范规定的

    props.setProperty("mail.smtp.auth", "true");//请求服务器进行身份认证。参数与具体的JavaMail实现有关

    Session session = Session.getInstance(props);//发送邮件时使用的环境配置

    session.setDebug(true);

    MimeMessage message = new MimeMessage(session);

    //设置邮件的头

    message.setFrom(new InternetAddress("xxx@163.com"));

    message.setRecipients(Message.RecipientType.TO, "xxx@qq.com");

    message.setSubject("This is second message");

    //设置正文

    //搞出文本部分

    MimeBodyPart textPart = new MimeBodyPart();

    textPart.setContent("aaa<img src='cid:mm'/>aaa", "text/html");

    //搞图片部分

    MimeBodyPart imagePart = new MimeBodyPart();

    imagePart.setContentID("mm");

    //把磁盘上的文件加到part中使用到了JAF框架

    DataHandler dh = new DataHandler(new FileDataSource("src/0.jpg"));

    imagePart.setDataHandler(dh);

    MimeMultipart mp = new MimeMultipart();

    mp.addBodyPart(textPart);

    mp.addBodyPart(imagePart);

    mp.setSubType("related");//有关系的

    message.setContent(mp);

    message.saveChanges();

    //发送邮件

    Transport ts = session.getTransport();

    ts.connect("xxx@163.com", "123456"); //密码为授权码不是邮箱的登录密码

    ts.sendMessage(message, message.getAllRecipients());//对象,用实例方法

    }

    }

    昆明达内Java培训的老师在下一期的内容中讲的是带有文本、图片、附件的邮件。

    推荐文章

上一篇:JavaMail邮件开发中纯文本的邮件

下一篇:JavaMail邮件开发中带文本、图片、附件的邮件

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:12/29

Java--零基础业余班

Java--零基础业余班

开班日期:12/29

Java--周末提升班

Java--周末提升班

开班日期:12/29

Java--零基础周末班

Java--零基础周末班

开班日期:12/29

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56