[java] Javamail을 사용하여 이메일에 주문 확인 추가하기

이메일은 온라인 주문과 같은 비즈니스에서 중요한 부분입니다. Javamail은 Java로 이메일을 보내고 받는 데 사용되는 라이브러리입니다. 이번 블로그 포스트에서는 Javamail을 사용하여 이메일에 주문 확인을 추가하는 방법에 대해 알아보겠습니다.

1. Javamail 의존성 추가하기

먼저, 프로젝트에 Javamail 의존성을 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음과 같은 의존성을 추가합니다.

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>javax.mail-api</artifactId>
    <version>1.6.2</version>
</dependency>

Gradle을 사용하는 경우, build.gradle 파일에 다음과 같은 의존성을 추가합니다.

implementation 'javax.mail:javax.mail-api:1.6.2'

2. 이메일 보내는 메소드 작성하기

이제 이메일을 보내는 메소드를 작성해보겠습니다. 다음은 예시 코드입니다.

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

public class EmailSender {
    public static void sendOrderConfirmation(String recipientEmail, String orderNumber) {
        // SMTP 서버 설정
        String host = "smtp.gmail.com";
        String username = "your-email@gmail.com";
        String password = "your-password";

        Properties properties = new Properties();
        properties.put("mail.smtp.host", host);
        properties.put("mail.smtp.auth", "true");
        properties.put("mail.smtp.starttls.enable", "true");
        properties.put("mail.smtp.port", "587");

        // 세션 생성
        Session session = Session.getDefaultInstance(properties, new Authenticator() {
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(username, password);
            }
        });

        try {
            // 이메일 작성
            MimeMessage message = new MimeMessage(session);
            message.setFrom(new InternetAddress(username));
            message.setRecipient(Message.RecipientType.TO, new InternetAddress(recipientEmail));
            message.setSubject("주문 확인");
            message.setText("주문 번호: " + orderNumber);

            // 이메일 전송
            Transport.send(message);
            System.out.println("이메일을 성공적으로 전송했습니다.");
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }
}

위의 코드에서는 Gmail SMTP 서버를 사용하도록 설정하였습니다. 실제로 사용하실 때는 your-email@gmail.comyour-password 값을 실제 계정 정보로 변경해주시고, SMTP 서버 설정을 프로젝트에 맞게 변경해야 합니다.

3. 이메일 보내기

이제 주문 확인 이메일을 보내보겠습니다. 다음은 예시 코드입니다.

public class Main {
    public static void main(String[] args) {
        String recipientEmail = "example@example.com";
        String orderNumber = "1234";

        EmailSender.sendOrderConfirmation(recipientEmail, orderNumber);
    }
}

위의 코드에서는 recipientEmail 변수에 수신자의 이메일 주소, orderNumber 변수에 주문 번호를 입력하고 EmailSender.sendOrderConfirmation() 메소드로 이메일을 보냅니다.

결론

이메일을 사용하여 주문 확인을 추가하는 것은 Javamail을 통해 간단하게 수행할 수 있습니다. Javamail을 사용하면 비즈니스에서 이메일을 보내고 받는 다양한 작업을 수행할 수 있습니다. 이메일을 통해 고객과 소통할 수 있고, 중요한 정보를 빠르게 전달할 수 있습니다.

Javamail 공식 문서는 아래 링크에서 참고하실 수 있습니다:

이상으로 Javamail을 사용하여 이메일에 주문 확인을 추가하는 방법에 대해 알아보았습니다.