[java] Javamail을 사용하여 이메일에 정기결제 안내 추가하기
이메일은 비즈니스 환경에서 중요한 소통 수단입니다. 정기결제와 관련된 안내를 이메일로 전송하려면 Javamail API를 사용할 수 있습니다. 이 문서에서는 Javamail을 사용하여 이메일에 정기결제 안내를 추가하는 방법을 알아보겠습니다.
Javamail API 설정하기
Javamail API는 JavaMail 라이브러리를 의미하며, 이를 사용하여 이메일을 보내고 수신할 수 있습니다. Javamail API의 최신 버전을 다운로드하고 프로젝트에 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음 종속성을 추가합니다:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.6.2</version>
</dependency>
이메일 전송 코드 작성하기
이메일을 보내기 위해 Javamail API를 사용하는 코드를 작성해야 합니다. 아래의 예제 코드는 Gmail SMTP 서버를 사용하여 이메일을 보내는 방법을 보여줍니다:
import java.util.Properties;
import javax.mail.Session;
import javax.mail.Message;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class EmailSender {
public static void main(String[] args) {
String host = "smtp.gmail.com";
String port = "587";
String username = "your_email@gmail.com";
String password = "your_password";
Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", port);
Session session = Session.getInstance(props, new javax.mail.Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(username, password);
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("your_email@gmail.com"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("recipient_email@gmail.com"));
message.setSubject("정기결제 안내");
message.setText("안녕하세요, 정기결제 안내입니다.");
Transport.send(message);
System.out.println("이메일을 성공적으로 보냈습니다.");
} catch (Exception e) {
e.printStackTrace();
}
}
}
위의 코드에서는 Gmail의 SMTP 서버를 사용하여 이메일을 보냅니다. 따라서 username
과 password
를 Gmail 계정에 맞게 설정해야 합니다.
실행해보기
위의 코드를 실행하면 지정한 수신자에게 “정기결제 안내”라는 제목과 “안녕하세요, 정기결제 안내입니다.”라는 내용이 포함된 이메일이 전송됩니다.
이러한 방식으로 Javamail을 사용하여 이메일에 정기결제 안내를 추가할 수 있습니다.