[java] Javamail을 사용하여 이메일에 선물 추가하기

이메일은 현대적인 커뮤니케이션의 핵심 요소이며, 수많은 기능을 제공합니다. 이 중 하나는 선물 추가 기능입니다. 이제부터는 Javamail을 사용하여 이메일에 선물을 추가하는 방법에 대해 알아보겠습니다.

1. Javamail 라이브러리 추가하기

먼저, 우리는 Javamail 라이브러리를 프로젝트에 추가해야 합니다. 이를 위해 pom.xml 파일에 다음 종속성을 추가합니다.

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

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.6.2</version>
</dependency>

2. 이메일과 선물의 정보 설정하기

이제 선물과 함께 보낼 이메일의 정보를 설정해야 합니다. 다음과 같은 코드로 이메일 주소, 제목, 본문, 선물 파일 등을 설정할 수 있습니다.

String recipient = "example@example.com";
String subject = "선물이 도착했습니다!";
String body = "안녕하세요! 선물을 보내드립니다. 첨부된 파일을 확인해주세요.";
String giftFilePath = "path/to/gift.jpg";

3. 이메일 보내기

이제 Javamail을 사용하여 이메일을 보낼 준비가 되었습니다. 다음과 같은 코드를 사용하여 이메일을 보낼 수 있습니다.

Properties properties = System.getProperties();
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");

Session session = Session.getDefaultInstance(properties, new Authenticator() {
    protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication("your-email@example.com", "your-password");
    }
});

MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("your-email@example.com"));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(recipient));
message.setSubject(subject);

Multipart multipart = new MimeMultipart();

BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText(body);
multipart.addBodyPart(messageBodyPart);

BodyPart attachmentBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(giftFilePath);
attachmentBodyPart.setDataHandler(new DataHandler(source));
attachmentBodyPart.setFileName(giftFilePath);
multipart.addBodyPart(attachmentBodyPart);

message.setContent(multipart);

Transport.send(message);

4. 실행하기

이제 코드를 실행하여 이메일에 선물을 첨부한 후 보낼 수 있습니다. 이메일 주소와 비밀번호를 제공하여 보내는 사람의 계정으로 인증하십시오. 그런 다음 코드를 실행하여 선물을 첨부한 이메일을 받는 사람에게 보내십시오.

위의 코드는 Gmail SMTP 서버를 사용하는 예시입니다. 사용하는 이메일 서비스에 따라 호스트 및 포트를 변경해야 할 수도 있습니다.

결론

Javamail을 사용하여 이메일에 선물을 추가하는 방법을 살펴보았습니다. 이를 통해 선물과 함께 특별한 메시지를 전송할 수 있으며, 다양한 기능을 활용하여 더욱 풍부한 이메일 첨부 파일을 만들 수 있습니다.

관련 참고 문서: