2011.03.16 10:40

구글 GMail Smtp 를 이용하여 메일 전송하기 입니다.

간단한 예제만 올림. (설명은 생략~)

준비 사항 : 3개의 개별 라이브러리가 필요. mail.jar , activation.jar , additionnal.jar


1. 메일 전송을 담당하는 클래스 생성

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;

public class EmailTest{
private String mailhost = "smtp.gmail.com";
private Session session;
public AllModel_Security_Mail(String user, String pwd)
{
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.host", mailhost);
session = Session.getInstance(props, new EmailAuthenticator(user,pwd));
}
public void sendMail(String subject,String body, String sender,String recipients)
throws Exception
{
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(sender));
msg.setSubject(subject);
msg.setContent(body, "text/html;charset=EUC-KR");
msg.setSentDate(new Date());
msg.setRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
Transport.send(msg);
}
class EmailAuthenticator extends Authenticator {
private String id;
private String pw;
public EmailAuthenticator(String id, String pw) {
super();
this.id = id;
this.pw = pw;
}
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(id, pw);
}
}
}

2. 메일 전송 클래스내 구현부

try
{
EmailTest mail = new EmailTest("sender@gmail.com","password");  //보내는 사람 메일 주소와 암호
      
        //순서대로, 제목 - 본문 - 보내는 사람 메일 - 받는 사람 메일 
mail.sendMail("메일에 들어가는 제목 부분 입니다.", 
     "메일에 들어가는 본문 부분 입니다.",
             "sender@gmail.com",  "test@naver.com");                      
        
}catch (Exception e) {}


신고
Posted by 구름같은사나이

티스토리 툴바