티스토리 뷰

자바 smtp로 메일 보내는 아주 간단한 소스를 소개해 보겠다.

아주 간단하게 메일 보내면 되는데 구글링 해보면 심오하게 나와서..

아주 간단한 버전으로 정리해봤습니다.

아주 간단하니 심오한것은 구글링 해보면 되겠습니다.

아주 간단한 소스며 실제로 메일 가는것 까지 확인했습니다.

그럼 시작해 보겠습니다.

public class SendMailTestOne{
	public static void main(String[] args) throws UnsupportedEncodingException, MessagingException{
    	String host="1.1.1.1";
        int port=25;
        
        String sender="no-reply";
        String mailDomain="@aa.com";
        String rcver="aa@aa.com";
        
        Properties prop=new Properties();
        prop.put("main.smtp.host", host);
        prop.put("main.smtp.port", port);
        prop.put("main.smtp.auth", "false");
        
        Session session=Session.getDefaultInstance(prop);
        MimeMessage message=new MimeMessage(session);
        
        message.setFrom(new InternetAddress(sender+mailDomain,"관리자","UTF-8");
        
        message.addRecipient(Message.RecipientType.TO, new InternetAddress(rcver));
        message.setSubject("제목");
        message.setText("본문","utf-8","html");
        
        Transport.send(message);
        
        System.out.println("success")
    }
 }

success가 찍히면 정상적으로 메일이 갔다고 보면 될듯 합니다.

만약 host정보가 틀리다면

javax.mail.MessagingException: Unknow SMT host : 1.1.1.1;

이런식으로 나오고

받는사람 메일주소가 없다면

javax.mail.SendFailedException: Invalid Address; Unknown user :

포트정보가 다르다면

(한참있다가)

javax.mail.MessagingException: Could not connect to SMTP host , port :

mail.smtp.auth가 true로 되어 있다면

javax.mail.AuthenticationFailedException: failed to connect, no password specified?

이렇게 나올것이기 때문에

success가 출력되었다면 이상없이 메일이 갔다고 보면 된다.

여러명한테 보낼때는 message.addRecipients 로 s를 붙이면 되는데 이 부분은 이 틀에 구글링해서 추가하면 된다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함