java SMTP 기반 메일 발송 방법 구현

2404 단어 javaSMTP우편물
본고는 자바가 SMTP를 바탕으로 메일을 보내는 방법을 실례로 설명한다.여러분에게 참고할 수 있도록 나누어 드리겠습니다.구체적인 실현 방법은 다음과 같다.

import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.apache.log4j.Logger;
public class MailUtil {
 private static Logger logger = Logger.getLogger(MailUtil.class);
 /**
  *  
  * 
  * @param smtp
  *   SMTP 
  * @param user
  *    
  * @param password
  *    
  * @param subject
  *    
  * @param content
  *    
  * @param from
  *    
  * @param to
  *    
  */
 public static void send(String smtp, final String user,
   final String password, String subject, String content, String from,
   String to) {
  try {
   Properties props = new Properties();
   props.put("mail.smtp.host", smtp);
   props.put("mail.smtp.auth", "true");
   Session ssn = Session.getInstance(props, new Authenticator() {
    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
     return new PasswordAuthentication(user, password);
    }
   });
   MimeMessage message = new MimeMessage(ssn);
   //  
   InternetAddress fromAddress = new InternetAddress(from);
   //  
   message.setFrom(fromAddress);
   //  
   InternetAddress toAddress = new InternetAddress(to);
   //  
   message.addRecipient(Message.RecipientType.TO, toAddress);
   // 
   message.setSubject(subject);
   // 
   message.setText(content);
   // 
   message.setSentDate(new Date());
   //  
   Transport transport = ssn.getTransport("smtp");
   transport.connect(smtp, user, password);
   transport.sendMessage(message, message
     .getRecipients(Message.RecipientType.TO));
   // transport.send(message);
   transport.close();
   logger.info(" ");
  } catch (Exception e) {
   logger.warn(" ", e);
  }
 }
}

본고에서 기술한 것이 여러분의 자바 프로그램 설계에 도움이 되기를 바랍니다.

좋은 웹페이지 즐겨찾기