本文共 2688 字,大约阅读时间需要 8 分钟。
package email;import java.io.File;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.Transport;import javax.mail.Message.RecipientType;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;public class Email { public static void main(String[] args) { if (args.length < 4) { return; } // //parameter 1:email address //e.g a@163.com,b@163.com //parameter 2:the path of attachment //parameter 3:email context //parameter 3:email title // Email email = new Email(); email.CreateEmail(args); } public void CreateEmail(String[] args) { try { Properties properties = new Properties(); // properties.setProperty("mail.smtp.auth", "true"); properties.setProperty("mail.transport.protocol", "smtp"); properties.setProperty("mail.smtp.host", "server"); properties.setProperty("mail.smtp.port", "25"); Session session = Session.getInstance(properties, null); session.setDebug(false); Message message = new MimeMessage(session); message.setFrom(new InternetAddress("My Service")); message.setSubject(args[3]); message.setRecipients(RecipientType.TO,InternetAddress.parse(args[0])); MimeBodyPart bodyPartAttch = createAttachMent(args[1]); MimeBodyPart bodyPartContentAndPic = createContent(args[2]); MimeMultipart mimeMuti = new MimeMultipart("mixed"); mimeMuti.addBodyPart(bodyPartAttch); mimeMuti.addBodyPart(bodyPartContentAndPic); message.setContent(mimeMuti); message.saveChanges(); Transport.send(message); } catch (MessagingException e) { e.printStackTrace(); System.out.println("Email List:"+args[0]); System.out.println("Attachment Path:"+args[1]); System.out.println("Content:"+args[2]); } } public MimeBodyPart createAttachMent(String path) throws MessagingException { MimeBodyPart mimeBodyPart = new MimeBodyPart(); FileDataSource dataSource = new FileDataSource(new File(path)); mimeBodyPart.setDataHandler(new DataHandler(dataSource)); mimeBodyPart.setFileName(dataSource.getName()); return mimeBodyPart; } public MimeBodyPart createContent(String content) throws MessagingException { MimeMultipart mimeMutiPart = new MimeMultipart("related"); MimeBodyPart contentBodyPart = new MimeBodyPart(); contentBodyPart.setContent(" " + content + " ", "text/html;charset=gbk"); mimeMutiPart.addBodyPart(contentBodyPart); MimeBodyPart allBodyPart = new MimeBodyPart(); allBodyPart.setContent(mimeMutiPart); return allBodyPart; }}
转载地址:http://ucumi.baihongyu.com/