SMTP发送邮件

SMTP发送邮件

openkk  2011-06-09 20:38
  1. import java.util.Date;  
  2. import java.util.Properties;  
  3.   
  4. import javax.mail.Authenticator;  
  5. import javax.mail.Message;  
  6. import javax.mail.PasswordAuthentication;  
  7. import javax.mail.Session;  
  8. import javax.mail.Transport;  
  9. import javax.mail.internet.InternetAddress;  
  10. import javax.mail.internet.MimeMessage;  
  11.   
  12. import org.apache.log4j.Logger;  
  13.   
  14. public class MailUtil {  
  15.   
  16.     private static Logger logger = Logger.getLogger(MailUtil.class);  
  17.   
  18.     /** 
  19.      * 发送邮件 
  20.      *  
  21.      * @param smtp 
  22.      *            SMTP服务器 
  23.      * @param user 
  24.      *            用户名 
  25.      * @param password 
  26.      *            密码 
  27.      * @param subject 
  28.      *            标题 
  29.      * @param content 
  30.      *            邮件内容 
  31.      * @param from 
  32.      *            发件人邮箱 
  33.      * @param to 
  34.      *            收件人邮箱 
  35.      */  
  36.     public static void send(String smtp, final String user,  
  37.             final String password, String subject, String content, String from,  
  38.             String to) {  
  39.         try {  
  40.             Properties props = new Properties();  
  41.             props.put("mail.smtp.host", smtp);  
  42.             props.put("mail.smtp.auth""true");  
  43.             Session ssn = Session.getInstance(props, new Authenticator() {  
  44.                 @Override  
  45.                 protected PasswordAuthentication getPasswordAuthentication() {  
  46.                     return new PasswordAuthentication(user, password);  
  47.                 }  
  48.   
  49.             });  
  50.             MimeMessage message = new MimeMessage(ssn);//由邮件会话新建一个消息对象   
  51.             InternetAddress fromAddress = new InternetAddress(from);//发件人的邮件地址   
  52.             message.setFrom(fromAddress);//设置发件人   
  53.             InternetAddress toAddress = new InternetAddress(to);//收件人的邮件地址   
  54.             message.addRecipient(Message.RecipientType.TO, toAddress);//设置收件人  
  55.             message.setSubject(subject);//设置标题  
  56.             message.setText(content);//设置内容  
  57.             message.setSentDate(new Date());//设置发信时间   
  58.               
  59.             Transport transport = ssn.getTransport("smtp");  
  60.             transport.connect(smtp, user, password);  
  61.             transport.sendMessage(message, message  
  62.                     .getRecipients(Message.RecipientType.TO));  
  63.             // transport.send(message);  
  64.             transport.close();  
  65.             logger.info("邮件发送成功");  
  66.         } catch (Exception e) {  
  67.             logger.warn("邮件发送失败", e);  
  68.         }  
  69.     }  
  70. }  

猜你喜欢

转载自rongdmmap-126-com.iteye.com/blog/1489109