[java] Java Play Framework에서의 알림 메일 발송 방법은 어떻게 되나요?

알림 메일을 Play Framework에서 발송하는 방법은 다음과 같습니다.

  1. 의존성 추가: Play Framework에서는 메일 발송을 위해 일부 의존성을 추가해야 합니다. 이를 위해 build.sbt 파일에 다음과 같은 의존성을 추가합니다:
libraryDependencies += "com.typesafe.play" %% "play-mailer" % "X.X.X"

X.X.X는 Play Framework 버전에 맞는 play-mailer 라이브러리 버전으로 바꿔주어야 합니다. 이후 build.sbt 파일을 저장하고, 종속성을 다운로드하기 위해 프로젝트를 다시 빌드합니다.

  1. 메일 설정: 메일을 발송하기 위해 conf/application.conf 파일에서 메일 설정을 추가해야 합니다. 아래와 같은 설정을 추가하고, 해당 설정에 SMTP 서버 정보를 입력해주세요:
play.mailer {
  host = "smtp.gmail.com"
  port = 587
  ssl = false
  tls = true
  user = "your-email@gmail.com"
  password = "your-email-password"
  from = "Your Name <your-email@gmail.com>"
}
  1. 메일 발송: 이제 Java 코드를 사용하여 메일을 발송할 수 있습니다. 예를 들어, 회원 가입 성공 시 알림 메일을 발송하는 코드는 다음과 같습니다:
import play.libs.mailer.Email;
import play.libs.mailer.MailerClient;
import javax.inject.Inject;

public class MailerService {
    private final MailerClient mailerClient;
    
    @Inject
    public MailerService(MailerClient mailerClient) {
        this.mailerClient = mailerClient;
    }
    
    public void sendSignUpNotification(String recipientEmail, String recipientName) {
        Email email = new Email()
            .setSubject("회원 가입 알림")
            .setFrom("Your Name <your-email@gmail.com>")
            .addTo(recipientEmail)
            .setBodyHtml("<h1>회원 가입을 축하합니다, " + recipientName + "님!</h1>")
            .setBodyText("회원 가입을 축하합니다, " + recipientName + "님!");
        
        mailerClient.send(email);
    }
}

위의 예제 코드에서 MailerService 클래스는 MailerClient를 주입받아 메일 발송을 처리하는 로직을 구현합니다. sendSignUpNotification 메소드를 호출하여 회원 가입 알림 메일을 발송할 수 있습니다.

이제 Play Framework에서 알림 메일을 발송하는 방법을 알게 되었습니다. 필요에 따라 메일 내용을 변경하고 추가적인 로직을 구현하여 사용하면 됩니다.