Отправка шаблона html на почту (JavaMailSender)
Подскажите как мне передать по почте шаблон в формате HTML? Смог настроить только передачу текста. Нужно прокидывать шаблон в формате html в письме. По итогу пользователю должен отобразиться шаблон во входящем письме.
@Configuration
public class EmailConfig {
@Value("1@test.ru")
private String email;
@Value("password")
private String password;
@Bean
public JavaMailSender getJavaMailSender() {
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost("smtp.mail.ru");
mailSender.setPort(465);
mailSender.setUsername(email);
mailSender.setPassword(password);
Properties props = mailSender.getJavaMailProperties();
props.put("mail.transport.protocol", "smtps");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.ssl.enable", "true");
props.put("mail.debug", "true");
return mailSender;
}
}
@RestController
@RequestMapping("/v1/api/sendMail")
public class EmailController {
private final EmailService emailService;
public EmailController(EmailService emailService) {
this.emailService = emailService;
}
@PostMapping
public ResponseEntity addMail(@RequestBody EmailDto emailDto) {
emailService.addMail(emailDto);
return ResponseEntity.ok("send");
}
}
@Service
public class EmailService {
private final JavaMailSender javaMailSender;
public EmailService(JavaMailSender javaMailSender) {
this.javaMailSender = javaMailSender;
}
public EmailDto addMail(EmailDto emailDto) {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("1@test.ru");
message.setTo(emailDto.getEmail());
message.setSubject("Подтверждение регистрации");
message.setText("какой-о текст");
javaMailSender.send(message);
return emailDto;
}
}
public class EmailDto {
private String email;
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
шаблон, скриншот его расположения в проекте https://ibb.co/mcqFBLv
условный шаблон https://ibb.co/wS68CCC нужно вывести в письме почты (нужно прокидывать шаблон)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="../../../frontend/css/email.css">
</head>
<body>
<div class="wrapper">
<header class="wrapper__header">
<h1>Добро пожаловать</h1>
</header>
<div class="body">
<div class="body_description">
<span class="description">Добро пожаловать на тестовый ресурс!
<br>Ниже можете по навигации можно ознакомиться с ресурсе
</span>
</div>
<div class="body_button">
<button class="button">Перейти</button>
<button class="button">Зарегистрироваться</button>
</div>
<div class="footer">
<span>Рекламные данные</span>
</div>
</div>
</div>
</body>
</html>