Библиотека шаблонов электронной почты на Java [закрыто]

StackOverflow https://stackoverflow.com/questions/1176120

  •  19-09-2019
  •  | 
  •  

Вопрос

Я знаю, что есть библиотека под названием FreeMarker для создания шаблонов электронной почты для Java.Считаете ли вы, что эта библиотека подходит для использования в корпоративных проектах?Есть ли какие-либо другие библиотеки для создания шаблона электронной почты для Java?

Это было полезно?

Решение

Freemarker работает хорошо и очень мощно. Скорость имеет более простой синтаксис, несколько менее мощный и гораздо более щадящий.null (переменные не заполняются).

Я использовал оба, и с Velocity очень легко начать.Freemarker (несмотря на более строгую реализацию) предлагает гораздо больше с точки зрения «корректности» и возможностей.

Другие советы

Да, это.Для полноты картины есть и другие интересные библиотеки, такие как:

  • скорость апача
  • строка шаблона

Несколько лет назад я написал приложение для отправки уведомлений о счетах.Я использовал Velocity для создания фактического содержимого электронных писем.Транспорт обеспечивал Джеймс, сервер электронной почты — Apache.Это приложение ежедневно отправляет десятки тысяч персонализированных электронных писем.

Velocity не доставила мне никаких проблем, но, имея некоторый опыт работы с FreeMarker, я, вероятно, сейчас выберу FreeMarker.

Для справки, есть много других шаблонизаторы который вы можете использовать, и не только для электронной почты.В большинстве проектов, над которыми я работал, использовалась Velocity, а если не Velocity, то Freemarker.

Я автор Галька движок шаблонов, который, я думаю, это именно то, что вы ищете.

Другой вариант, который вы, возможно, захотите рассмотреть (хотя, вероятно, нет), — это использовать JSP, если вы находитесь в среде сервлетов.По большей части я бы не рекомендовал это делать, так как для настройки этой системы действительно требуется много предварительной работы.

Однако это оказалось полезным решением в нашей среде, где у нас есть группа веб-разработчиков, которые уже знакомы с синтаксисом JSP и пользовательскими тегами.Было приятно иметь возможность напрямую работать с содержимым электронного письма без необходимости изучать другой язык шаблонов (хотя я уверен, что FreeMarker, вероятно, не так уж и сложно выучить).Этот подход также позволяет нам повторно использовать некоторые из наших пользовательских тегов в содержимом электронной почты.

Прежде чем я начал создавать шаблоны электронной почты, я подумал, что спрошу своего друга, и мне пришла в голову идея использовать движок JSP для создания шаблонов (если вы находитесь в среде сервлетов).Я нашел эту идею оригинальной и идеально подходящей для моих нужд, поскольку я использую GAE, а добавление jar в GAE — очень дорогостоящее решение (влияние на производительность).

И как я пришел к этой ссылке (оригинальная идея)https://stackoverflow.com/a/458088/2033675

Поэтому я дал ссылку, как это сделать. Предложения по шаблонам электронной почты Java?

естественно, на случай, если у кого-то будут такие же ограничения, как и у меня.

Лучший

В корпоративном секторе многие люди используют такие инструменты, как сонар или PMD, чтобы оценить сложность кода.Я не знаю, поддерживает ли один из них какую-либо библиотеку шаблонов.Однако уровень сложности шаблонов, которые я просматривал в реальных условиях, был на высоком уровне, и мне бы очень хотелось предотвратить это в своем коде.Я пытался реорганизовать некоторые из них, и хотя мне это удалось, результаты никогда не были удовлетворительными.Несколько дней назад я реорганизовал шаблон 2kLoC до 150 строк кода шаблона и логики примерно 1,5kLoC в новом классе Java, используя фрагментарный.Конечно, это еще предстоит поработать над сопоставлением метрик, но теперь можно добиться поддерживаемого кода.Фрагментарные шаблоны обеспечивают отличное разделение задач за счет удаления логики привязки данных из шаблона.В качестве бонуса шаблон становится более пригодным для повторного использования.С другой стороны, связь между логикой и кодом также требует некоторого кода.В конечном итоге объем кода особо не изменился, но читаемость резко возросла.

Для корпоративного бизнеса я бы порекомендовал Snippetory.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top