Notice
Recent Posts
Recent Comments
준호씨의 블로그
java - javamail 로 이메일 발송하기 기본 예제 본문
반응형
javamail API 를 이용한 기본적인 메일 발송 코드를 구현 해 보자. 아래는 gmail 의 mx 레코드중 하나로 메일을 직접 보내는 예제이다.
final String host = "gmail-smtp-in.l.google.com.";
final String from = "junho85@daum.net";
final String to = "junho85@gmail.com";
Properties properties = System.getProperties();
properties.setProperty("mail.smtp.host", host);
Session session = Session.getDefaultInstance(properties);
try {
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from)); // from
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); // recipients
message.setSubject("This is subject"); // subject
message.setText("This is body"); // content
Transport.send(message); // send
System.out.println("Sent message successfully");
} catch (MessagingException e) {
e.printStackTrace();
}
property 를 만들고 각종 값을 세팅한다. 여기서는 smtp host 를 지정하였다. 그리고 그 property 를 이용해서 session 을 만들었다.
그리고 session 을 이용해서 MimeMessage 를 생성한다. message 에 from, to, subject 헤더를 입력하고 setText 로 본문을 입력한다. 그리고 Transport.send 로 메일을 발송한다.
잡담
JavaMail 의 철학이 뭔지는 아직 잘 이해하지 못하겠다. 왜 저렇게 복잡하게 만들었어야 했을까? API 레벨에서 굳이 Property 까지 기본적으로 사용해야 하는건 좀 과한건 아닐까? 그냥 SMTP 접속하고 envelop 정보 입력하고 메일 원문 보내면 될텐데 그냥 보면 좀 쓸데 없이 복잡해 보인다. 내가 아직 JavaMail 을 이해하지 못해서 그럴지도 모르겠다. 이해하게 되면 관련 글을 좀 써봐야 겠다.
반응형
'개발이야기 > 이메일시스템' 카테고리의 다른 글
perl - send email. 이메일 발송하기. (0) | 2019.01.04 |
---|---|
java - javamail 로 이메일 발송하기. mail from 과 header from 을 서로 다르게 세팅하기 (0) | 2018.05.28 |
javamail - eml 파싱하기. 메일 body 출력하기. (0) | 2018.05.28 |
java - javamail 로 이메일 발송하기. TLS 발송 (0) | 2018.05.28 |
java - javamail 로 이메일 발송하기. rcpt to 와 header to 를 서로 다르게 세팅하기 (0) | 2018.05.28 |
Comments