Эта статья включает в себя список общих ссылок , но он остается в значительной степени непроверенным, поскольку в нем отсутствует достаточное количество соответствующих встроенных ссылок . ( Март 2010 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
Разработчики) | Фонд программного обеспечения Apache |
---|---|
Стабильный выпуск | 2.3 / 27 февраля 2021 г . [1] |
Репозиторий | Репозиторий скорости |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Тип | Движок шаблонов |
Лицензия | Лицензия Apache 2.0 |
Веб-сайт | скорость |
Apache Velocity, впервые выпущенный в апреле 2001 года, представляет собой механизм шаблонов на основе Java , который предоставляет язык шаблонов для ссылок на объекты, определенные в коде Java. Он направлен на обеспечение четкого разделения между уровнем представления и бизнес-уровнями в веб-приложении ( шаблон проектирования модель – представление – контроллер ).
Velocity - это проект программного обеспечения с открытым исходным кодом, поддерживаемый Apache Software Foundation . Он выпущен под лицензией Apache License . Джон Скотт Стивенс получил название от AltiVec Velocity Engine в микросхеме PowerPC G4 .
Использует [ редактировать ]
Вот некоторые распространенные типы приложений, использующих Velocity:
- Веб-приложения : Веб-разработчики отображают структуры HTML- страниц. Контент заполнен динамической информацией. Страница обрабатывается с помощью VelocityViewServlet или любого из множества фреймворков, поддерживающих Velocity.
- Генерация исходного кода : Velocity можно использовать для генерации исходного кода Java , SQL или PostScript на основе шаблонов . Таким образом Velocity используется в ряде программных пакетов с открытым исходным кодом и коммерческих программных продуктов . [2]
- Автоматические электронные письма : многие приложения автоматически генерируют электронные письма для регистрации учетной записи, напоминания пароля или автоматически отправляемых отчетов. Используя Velocity, шаблон электронной почты можно сохранить в текстовом файле , а не непосредственно встраивать в код Java.
- Преобразование XML : Velocity предоставляет задачу Ant под названием Anakia, которая считывает файл XML и делает его доступным для шаблона Velocity. Распространенным приложением является преобразование документации по программному обеспечению, хранящейся в общем формате «xdoc», в стилизованный документ HTML.
- AWS API Gateway использует механизм Apache Velocity для шаблонов отображения тела - выводится JSON .
Примеры кода [ править ]
Следующий шаблон :
## Velocity Hello World < html > < body > # set ( $ foo = "Velocity" ) ##, за которым следует Hello $ foo World! </ body > </ html >
обработанный Velocity создает следующий HTML:
< html > < тело > Привет, мир скорости! </ body > </ html >
Другой пример с использованием условий:
# if ( $ foo < 10 ) ** На север ** # elseif ( $ foo == 10 ) ** На восток ** # elseif ( $ bar == 6 ) ** На юг ** # else ** На запад ** # конец
Шаблон сопоставления тела AWS API Gateway для DynamoDB HTTP:
{ "TableName": "happy- marketer ", "KeyConditionExpression": "pk =: pk AND begin_with (sk,: sk)", # if ($ input . Params ( 'projectStatus' ) == 'archived' ) "FilterExpression": "projectStatus =: Archived", # else "FilterExpression": "projectStatus =: InProgress OR projectStatus =: Completed", # end "ExpressionAttributeValues": { ": pk": { "S": "project" }, ": sk": { "S": " $ context . Authorizer . Claims . Email " }, # if ($ input . Params ( 'projectStatus' ) == 'archived' ) ": Архивировано": { "S": "Архивировано" } # else ": InProgress": { «S»: «Выполняется» }, «: Завершено»: { "S": "Completed" } # конец } }
Другой пример с необязательным массивом ; без условия не удастся из-за недопустимого результирующего JSON:
{ "email": " $ context . authorizer . requests . email " # if ($ input . params ( 'countries' ) ! = "" ) , "страны": $ input . params ( 'страны' ) # конец}
Синтаксис и общая концепция шаблонов Apache Velocity аналогичны синтаксису старого механизма шаблонов WebMacro , который теперь также является проектом с открытым исходным кодом. [ необходима цитата ]
См. Также [ править ]
- Крутящий момент Apache
- FreeMarker
- JavaServer Pages
- Тимелист
Ссылки [ править ]
- ^ "Скорость Apache - Новости проекта" . скорость.apache.org . Фонд программного обеспечения Apache . Проверено 2 апреля 2021 .
- ^ "PoweredByVelocity" . Вики по скорости . Wiki.apache.org. 2009-12-30. Архивировано 23 марта 2010 года . Проверено 29 марта 2010 .
Библиография [ править ]
- Харроп, Роб; Дарвин, Ян (30 августа 2004 г.), Pro Jakarta Velocity: от профессионала к эксперту (1-е изд.), Apress , стр. 370, ISBN 978-1-59059-410-0, Архивируется с оригинала на 5 июля 2009 года , извлекаться +4 Сентября, 2009
- Коул, Джим; Д. Градеки, Джозеф (16 июля 2003 г.), Освоение скорости Apache (1-е изд.), Wiley , стр. 372, ISBN 978-0-471-45794-7, заархивировано из оригинала 7 октября 2012 г. , извлечено 4 сентября 2009 г.
Внешние ссылки [ править ]
- Скорость в Apache
- Гид пользователя