Skip to content

Instantly share code, notes, and snippets.

@memojja
Created November 13, 2020 13:07
Show Gist options
  • Save memojja/4f9342bf9592df284bbb5705446ff347 to your computer and use it in GitHub Desktop.
Save memojja/4f9342bf9592df284bbb5705446ff347 to your computer and use it in GitHub Desktop.
@Service
public class MailSenderService {
private JavaMailSender javaMailSender;
@Autowired
public MailSenderService(JavaMailSender javaMailSender) {
this.javaMailSender = javaMailSender;
}
@Value("${email.from.address}")
private String fromAddress;
public void sendMail(SendEmailRequest emailRequest) throws MessagingException {
sendMailMultipart(emailRequest.getEmail(), emailRequest.getSubject(), emailRequest.getMessage(), null);
}
public void sendMail(SendEmailRequest emailRequest, File file) throws MessagingException {
sendMailMultipart(emailRequest.getEmail(), emailRequest.getSubject(), emailRequest.getMessage(), file);
}
private void sendMailMultipart(String toEmail, String subject, String message, File file) throws MessagingException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
helper.setFrom(fromAddress);
helper.setTo(toEmail);
helper.setSubject(subject);
helper.setText(message);
if (file != null) {
helper.addAttachment(file.getName(), file);
}
javaMailSender.send(mimeMessage);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment