Javamail 을 통해 mail 보내기

IT 바라보기/Programming


              [공지]연극 [스캔들] 초대이벤트! 진행中! (~5/29 까지)
              [공지]연극 [시간을 파는 상점] 초대이벤트! 진행中! (~6/4 까지)

 

먼저
http://java.sun.com/products/javamail/index.jsp

다음의 링크에서 JavaMail 을 다운 받는다
지금 현제 1.4버전이 최신...

그리고
http://java.sun.com/products/javabeans/jaf/downloads/index.html

여기서 JAF(JavaBeans Activation Framework)을 다운 받는다
지금 현제 1.1 버전이다

이 둘을 다운 받은 후에 압축을 풀어서
JavaMail 안에 있는 jar 파일을 자바설치폴더/jre/lib/ext 안에 복사를 한다
그리고 JAF안에 있는 activation.jar파일을 같은 경로로 복사를 하면 된다



다음은 메일 보낼 때 인증 확인 하는 방법이다

참고로 ISP 업체들이 제공하는 SMTP 서버를 이용하면 메일을 보낼 수 있다..
하지만, 이들 업체 중에서 인증을 받아서 이용하는 업체들이 있다..
참고로 kornet.net을 서버로 지정해서 smtp 메일을 보낼 때 인증이 필요할 것이다..

인증을 받기 위한 클래스를

import java.util.*;
import java.io.*;

import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class UserAuthentication extends Authenticator {
 PasswordAuthentication pa;
 
 public UserAuthentication(String id, String password) {
  pa = new PasswordAuthentication(id, password);
 }
 
 
 public PasswordAuthentication getPasswordAuthentication() {
  return pa;
 }
}

다음처럼 정의를 한다. smtp 서버의 아이디와 패스워드를 통한 인증을 하는 클래스이다...

실질적인 사용은

UserAuthentication auth = new UserAuthentication("아이디", "비밀번호");
Properties prop = System.getProperties();
prop.put("mail.smtp.auth", "true");
Session sessions = Session.getInstance(prop, auth);

다음과 같이 정의를 함으로서 사용이 가능 할 것이다..

단, 위의 구문은 javaMail과 jaf를 이용하는 구문이다. 이전 페이지에서 사용방법을 적은 것 같다.

이렇게 하면 메일을 보낼 수 있다.....


Name
Password
Homepage
Secret