package cn.test.demo;
import java.io.FileOutputStream;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeUtility;
public class ComplexMail {
/**
*
* @throws MessagingException
* @throws AddressException
*/
public static void main(String[] args) throws Exception {
MimeMessage message = new MimeMessage(Session.getInstance(new Properties()));
message.setFrom(new InternetAddress("[email protected]"));
message.setRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
message.setSubject(" ");
//
MimeBodyPart text = new MimeBodyPart();
text.setContent(" xxx<br><img src='cid:3.jpg'>", "text/html;charset=UTF-8");
//
MimeBodyPart image = new MimeBodyPart();
image.setDataHandler(new DataHandler(new FileDataSource("src\\3.jpg")));
image.setContentID("3.jpg");
//
MimeBodyPart attach = new MimeBodyPart();
DataHandler dh = new DataHandler(new FileDataSource("src\\ .mp3"));
attach.setDataHandler(dh);
String filename = dh.getName();
attach.setFileName(MimeUtility.encodeText(filename)); //
//
MimeMultipart content = new MimeMultipart();
content.addBodyPart(text);
content.addBodyPart(image);
content.setSubType("related");
//
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(attach);
MimeBodyPart bp = new MimeBodyPart();
bp.setContent(content);
mm.addBodyPart(bp);
mm.setSubType("mixed");
message.setContent(mm);
message.saveChanges();
message.writeTo(new FileOutputStream("c:\\3.eml"));
}
}