javamail 发送邮件

package com.jd.mail;

import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;

/**
 * javamail Client
 * User: zhangb
 * Date: 12-4-20
 * Time: 上午12:53
 */
public class EmailClient {

    public static void sendMail(String subject, String content, String sender, String password, String ... receivers) throws MessagingException {
        BodyPart mdp = new MimeBodyPart();
        mdp.setContent(content, "text/html;charset=UTF-8");
        Multipart mm = new MimeMultipart();
        mm.addBodyPart(mdp);

        Properties props = new Properties();
        props.put("mail.smtp.host", "smtp.163.com");
        props.put("mail.smtp.auth", "true");
        Session sendSession = Session.getDefaultInstance(props, new EmailAuthenticator(sender, password));
        sendSession.setDebug(true);

        Message message = new MimeMessage(sendSession);
        message.setFrom(new InternetAddress(sender));
        Address[] addresses = new InternetAddress[receivers.length];
        for (int i = 0; i < receivers.length; i ++) {
            addresses[i] = new InternetAddress(receivers[i]);
        }
        message.setRecipients(Message.RecipientType.TO, addresses);
        message.setSubject(subject);
        message.setContent(mm);
        message.saveChanges();

        Transport.send(message);
    }


    private static class EmailAuthenticator extends Authenticator {
        private String strUser;
        private String strPwd;

        public EmailAuthenticator(String user, String password) {
            this.strUser = user;
            this.strPwd = password;
        }

        protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(strUser, strPwd);
        }
    }

}
 

 

你可能感兴趣的:(javamail email)