Miami-art.ru

Создание и развитие сайта

FreeMarker

19-07-2023

FreeMarker
Тип

Шаблонизатор

Разработчик

Jonathan Revusky, Attila Szegedi, Dániel Dékány и другие

Написана на

Java

Операционная система

Кроссплатформенное программное обеспечение

Последняя версия

2.3.18 (21.03.2011)

Тестовая версия

2.4 Preview 1 (16.07.2008)

Состояние

Active

Лицензия

BSD-like License

Сайт

http://freemarker.org

FreeMarker — компилирующий обработчик шаблонов, написанный на Java, один из инструментов, позволяющих отделить бизнес-логику и данные от представления в духе концепции Model-view-controller. Используется преимущественно при разработке web-приложений с использованием Java-сервлетов, также может использоваться для вывода текста в других случаях: генерация CSS, исходного кода Java и т. д. В отличие от JSP FreeMarker не является зависимым от архитектуры сервлета или от протокола HTTP. Таким образом шаблонизатор может использоваться не только в web-проектах. FreeMarker является свободным ПО.

Содержание

Пример кода

Данный шаблон,

<html>
<body>
<p>Hello ${name}! You have the following messages:
<#list messages as m>
  <p><b>${m.from}:</b> ${m.body}</p>
</#list>
</body>
</html>

обработанный шаблонизатором FreeMarker, сгенерирует следующую html-страницу:

<html>
<body>
<p>Hello Joe! You have the following messages:
  <p><b>Tim:</b> Please don't forget to bring the conference papers!</p>
  <p><b>Cindy:</b> Can you give me visit afternoon?</p>
  <p><b>Richard:</b> Man, this time don't forget the papers!</p>
</body>
</html>

Переменные «name» и «messages» были определены до генерации шаблона, так что верстальщик сможет сконцентрироваться только на вопросах правильного отображения содержимого. Шаблон остаётся неизменным в независимости от значения переменной и от того, откуда она была получена. Кроме того, API Java-бинов может быть скрыто с использованием техники, именуемой упаковка объектов (object wrapping). Например, «messages» может быть как списком или массивом Java-бинов, имеющих поля «from» и «body», так и чем-нибудь другим. Шаблон при этом менять не придётся, если при этом использовать правильную обёртку для объекта (object wrapper).

Проекты и технологии, которые поддерживают Freemarker

  • Software that incorporates FreeMarker

См. также

Ссылки

  • Сайт FreeMarker
  • FreeMarker Classic
  • FMPP — текстовый препроцессор, основанный на FreeMarker.

FreeMarker.

© 2018–2023 miami-art.ru, Россия, Смоленск, ул. Загорская 8, офис 99, +7 (4812) 12-23-90