java发送邮件附件.网页.文本类型的实现(Content的内容设计)

                    content
Mime类型
   text/plain 文本
   text/html;charset=utf-8  网页
   multipart/alternative  网页与text关联
   multipart/related      网页与img关联
   multipart/mixed        网页和attach关联
邮件包换两个部分
    1.消息头
        键值对
             发送人,主题,接收人,内容,发送方式等     
    2.消息体content内容
         多个Mimebodypart组装 表示消息的一个板块 用
          利用Mimemult进行整合
        
        text:
        MimeBodyPart  textPart=new MimeBodyPart();
        textPart.setContent("这是text test", "text/plain;charset=utf-8");  
        
        attach:  //
        MimeBodyPart attachPart=new MimeBodyPart();
attachPart.setDataHandler(new DataHandler(new FileDataSource(new File("C:\\Users\\17854\\Desktop\\猫儿飞.jpg"))));
attachPart.setFileName(MimeUtility.decodeText("猫儿飞.jpg"));  //utf-8转换


        html:  //润过如果append的内容为null  ,则只显示text和attach
StringBuffer stringBuffer=new StringBuffer();
stringBuffer.append("");
stringBuffer.append("");
stringBuffer.append("");
stringBuffer.append("");
MimeBodyPart  htmlPart=new MimeBodyPart();
htmlPart.setContent(stringBuffer.toString(),"text/html;charset=utf-8");


        //将网页与text进行混合
    MimeMultipart HtmlAndText=new MimeMultipart("alternative");
    HtmlAndText.addBodyPart(HtmlAndImgPart);
    HtmlAndText.addBodyPart(textPart);
    
        //将网页和text打包成一个bodypart
        MimeBodyPart HtmlAndTextPart=new MimeBodyPart();
        HtmlAndTextPart.setContent(HtmlAndText);
         
       //将网页和附件mixed
       MimeMultipart  all=new MimeMultipart("mixed");
    all.addBodyPart(attachPart);
    all.addBodyPart(HtmlAndTextPart);
        
    mail.setContent(all); 







你可能感兴趣的:(Java)