- FreeMarker
-
FreeMarker Тип Разработчик Jonathan Revusky, Attila Szegedi, Dániel Dékány и другие
Написана на Операционная система Последняя версия 2.3.19 (29 февраля 2012 года)
Тестовая версия Состояние Active
Лицензия BSD-like License
Сайт 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
См. также
Ссылки
- Сайт FreeMarker
- FreeMarker Classic
- FMPP — текстовый препроцессор, основанный на FreeMarker.
Веб-фреймворки ASP.NET DotNetNuke • ASP.NET MVC • MonoRail
ColdFusion ColdSpring • Fusebox • Mach-II • Model-Glue
Java Apache (Cocoon • Struts • Velocity • WebWork 2) • AppFuse • Aranea • Eclipse • Facelets • Flexive • FreeMarker • Google Web Toolkit • Grails • Hamlets • ItsNat • JavaServer Faces • Jspx • JBoss Seam • jZeno • Makumba • OpenLaszlo • OpenXava • Reasonable Server Faces (RSF) • Restlet • RichFaces • RIFE • Shale • SmartClient • Spring • Stripes • Tapestry • ThinWire • Vaadin • WebMacro • WebWork • WebObjects • Wicket • ZK
JavaScript node.js • AJILE • Clean AJAX • Dojo Toolkit • Echo • Ext JS • jQuery • jMaki • Microsoft AJAX Library • MochiKit • MooTools • Prototype • qooxdoo • Rialto Toolkit • Rico • script.aculo.us • SmartClient • Spry • SproutCore • Yahoo! UI Library • Underscore • PhoneGap
Perl Catalyst • Interchange • Titanium • Maypole • HTML:Mason
PHP Acode • Akelos • BlueShoes • CakePHP • Canvas • CodeIgniter • DIY • Drupal • Fuse • Horde • Kohana • LiveStreet • PHP For Applications • PHPOpenbiz • PRADO • Qcodo • Seagull • Solar • Symfony • W3Core • Yii • Zend • Zoop • Joomla
Python CherryPy • Django • GAE framework • Karrigell • Nevow • Porcupine • Pylons • Pyramid • Spyce • TurboGears • Twisted • Tornado • Webware • Zope
Ruby Camping • Nitro • IOWA • Ramaze • Cerise • Merb • Ruby on Rails • Sinatra • Padrino
Прочие
языкиAlpha Five • Fusebox (ColdFusion • PHP) • Helma Object Publisher (Server-side) • Lift (Scala) • Magic (Scheme) • OpenACS (Tcl) • Seaside (Smalltalk) • UnCommon Web (Common Lisp) • Yaws (Erlang) • Oracle Application Express (PL/SQL)
Категории:- Программное обеспечение по алфавиту
- Java
- Java Enterprise Edition
- Свободное программное обеспечение, написанное на Java
- Шаблонные системы
Wikimedia Foundation. 2010.