Spring boot

스프링부트 스타터 메일 기능 설명

조충희 2025. 9. 2. 14:27

스프링 부트 스타터 메일(Spring Boot Starter Mail)
이메일 전송을 위한 스프링 프레임워크의 도구

스프링 부트 스타터 메일은 스프링 프레임워크에서 이메일 보내는 걸 완전 쉽게 만들어주는 도구다. 개발자는 JavaMailSender 빈을 주입받아 send() 메서드만 호출하면 이메일이 발송된다.

 

핵심 기능

JavaMailSender 빈(Bean) 자동 생성 스프링부트가 application.yml 파일에 있는 spring.mail.* 속성들을 읽어서, 호스트, 포트, 계정 정보, TLS/SSL 옵션 등 모든 설정이 끝난 JavaMailSender 빈을 스프링 컨테이너에 알아서 등록해줌.

MailProperties 바인딩 application.yml의 모든 spring.mail 속성들은 MailProperties라는 설정 클래스에 자동으로 연결됨. 덕분에 JavaMailSender 빈을 만들 때 설정 값들을 아주 편하게 쓸 수 있음.

 

구현 절차

① 의존성 추가 (build.gradle)

implementation 'org.springframework.boot:spring-boot-starter-mail'

 

② 설정 (application-dev.yml) 이메일 발송에 필요한 모든 '레시피'를 여기다 적어두면 됨. Gmail의 SMTP 서버(smtp.gmail.com), 보안 통신을 위한 포트(587), 인증에 필요한 계정 정보 및 starttls 옵션 등을 자세히 명시해서, JavaMailSender가 만들어질 때 필요한 모든 정보를 제공함.

 

③ 구현 (EmailService.java) @RequiredArgsConstructor를 이용해 모든 설정이 끝난 JavaMailSender 빈을 안전하게 주입받음. sendEmail 메서드에서는 SimpleMailMessage 객체를 써서 메일의 기본 정보(수신자, 제목, 본문)를 만든 후, javaMailSender.send(message)라는 딱 한 줄의 코드로 실제 메일 발송을 위임함.

'Spring boot' 카테고리의 다른 글

인메모리 캐시 개념  (0) 2025.09.02