WebMacro
| WebMacro | |
|---|---|
| Тип | Шаблонизатор |
| Разработчик | SourceForge |
| Написана на | Java |
| Операционная система | Кроссплатформенное ПО |
| Последняя версия | 2.2 (25 февраля 2010) |
| Лицензия | BSD |
| Сайт | webmacro.sourceforge.net |
WebMacro — фреймворк предназначенный для разработки сервлетов. Фреймворк реализует шаблон проектирования Model-View-Controller, обеспечивая чистое разделение ответственностей, а именно WebMacro, обеспечивает чистое отделение исходного кода проекта от HTML-кода представления.
WebMacro – распространяется как проект с открытым исходным кодом.
WebMacro первоначально создавался и разрабатывался Джастином Уэллсом из Semiotek Inc., в середине 2000 года проект был принят командой в SourceForge.
Кроме того, WebMacro, может использоваться для генерации произвольного текстового вывода на основе шаблона (один из способов такого использования является автоматизированная генерация кода).
Шаблонный язык очень похож на язык, используемый в Apache Velocity, а также имеется автоматизированный скрипт, выполняющий миграцию.
Пример кода
Пример использования шаблона, и простого Java приложения. Исходный текст шаблона с именем search.view
<html><head><title>Search Results</title></head>
<body>
<h1>Here are the results for $query:</h1>
<table>
#foreach $result in $results {
<tr><td>$result.Number</td>
<td><a href="$result.Link">$result.Name</a></td></tr>
}
</table>
</body></html>
Символ «$» определяет, что за ним в шаблоне следует имя переменной.
Сокращенный пример Java-кода использующего WebMacro:
WebMacro wm = new WM(); // вероятно, будет создан только однажды в Вашем сервлете
FastWriter out = wm.getFastWriter (outStream, "UTF8"); // создаётся FastWriter с кодированием UTF8
Context c = wm.getContext(); // производится в каждом запросе
c.put("query", queryString); // помещает обычный Java объект, в данном случае строку
Result[] res = ...; // некоторые данные предназначенные для вывода: возможно результаты поиска.
c.put("results", res); // размещение объекта в контексте
Template t = wm.getTemplate("search.view");
t.write(out, c);
out.flush();
См. также
Ссылки
- Официальный сайт Архивная копия от 2 сентября 2011 на Wayback Machine (англ.)
- Сравнение обработчиков шаблонов для Java Архивная копия от 14 ноября 2012 на Wayback Machine (англ.)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.