[java] Javamail을 사용하여 이메일에 회신 요청 설정하기
이메일을 보낼 때, 때로는 수신자에게 회신 요청을 설정하는 것이 유용할 수 있습니다. Javamail 라이브러리를 사용하여 이메일에 회신 요청을 설정하는 방법에 대해 알아보겠습니다.
Javamail 라이브러리 추가하기
먼저, 프로젝트에 Javamail 라이브러리를 추가해야 합니다. Maven을 사용하는 경우, pom.xml
파일에 다음 의존성을 추가합니다:
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
Gradle을 사용하는 경우, build.gradle
파일에 다음 의존성을 추가합니다:
dependencies {
implementation 'com.sun.mail:javax.mail:1.6.2'
}
회신 요청 설정하기
다음은 Javamail을 사용하여 이메일에 회신 요청을 설정하는 예제 코드입니다:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
public class EmailSender {
public static void main(String[] args) {
String host = "your-smtp-host";
String username = "your-username";
String password = "your-password";
String recipient = "recipient@example.com";
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", "587");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
Session session = Session.getInstance(props, new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(username));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipient));
message.setSubject("Hello");
message.setText("This is the email content.");
// 회신 요청 설정
message.setHeader("X-Confirm-Reading-To", username);
Transport.send(message);
System.out.println("Email sent successfully!");
} catch (MessagingException e) {
System.out.println("Failed to send email. Error message: " + e.getMessage());
}
}
}
위 예제에서는 message.setHeader("X-Confirm-Reading-To", username)
을 사용하여 회신 요청 헤더를 설정합니다. 이 설정은 이메일을 수신한 사람이 회신할 때, 회신 메일이 username
으로 전송되도록 합니다.
마무리
이제 Javamail을 사용하여 이메일에 회신 요청을 설정하는 방법을 알게 되었습니다. 이를 통해 이메일을 보낼 때 회신 요청을 유용하게 활용할 수 있습니다. 자세한 내용은 Javamail 공식 문서를 참조하세요.