Как лучше всего создавать шаблоны для исходящей электронной почты?Должен ли я каждый класс создать HTML для конкретного электронного письма?Должен ли я иметь текстовый шаблон с заполнителями, которые заменяются общепринятым методом?
В первом варианте у меня будет метод sendEmail, который принимает отформатированную строку html и отправляет электронное письмо.Несколько классов будут вызывать этот метод после создания html-представления электронной почты.
Во втором варианте я хотел бы представить несколько текстовых файлов, таких как
<html>
<title>{emailTitle}</title>
Your user name is: {userName}
</html>
, затем метод, который берет хэш-карту ключей, загружает соответствующий текстовый файл и затем заменяеткаждый ключ в хэш-карте со значением.Это кажется более гибким, поскольку коду не нужно ничего знать о html для создания, и вы можете изменить электронную почту, не меняя код (только удалив значения - добавление нового ключа потребует изменений кода).
Как лучше всего форматировать электронную почту?Есть ли другой вариант, который я должен рассмотреть?Я должен отправить четыре или пять различных типов электронных писем - новая регистрация, сброс пароля, подтверждение заказа и т. Д.
Я использую Java, но вопрос довольно независим от языка - некоторые языки могут облегчить создание шаблонов, но я спрашиваю о нормальных лучших практиках.