Programovanie

Velocity alebo FreeMarker?

Motory šablón je možné použiť na širokú škálu vývojových scenárov, kde chcete generovať text na základe konkrétnych pravidiel spracovania, a často sa používajú ako súčasť zobrazenia v aplikáciách MVC. V tomto článku Jeroen van Bergen vysvetľuje, kde sa šablónové motory hodia do architektúry vašej aplikácie, a ukazuje vám niektoré operácie spoločné pre všetky šablónové stroje. Na záver porovnáva dva popredné motory šablón Java, Velocity a FreeMarker, pokiaľ ide o výkon, jednoduché použitie a výkon.

Motory šablón sa používajú v scenároch vývoja Java, kde je potrebné automaticky generovať text a formátovať ho podľa konkrétnych pravidiel spracovania. Dva najpopulárnejšie otvorené zdroje šablón Java v súčasnosti sú Velocity a FreeMarker. Zatiaľ čo je Velocity dlho vedúcim šablónovacím strojom, FreeMarker ho začal predbiehať a ponúka rýchlosť a prepracovanosť, ktorú vo Velocity nie vždy nájdete.

V tomto článku vám v krátkosti predstavím šablónové motory, vysvetlím, kde zapadajú do vašej architektúry aplikácií Java, a ukážem vám základné operácie spoločné pre všetkých. Potom porovnám Velocity a FreeMarker na základe výkonu, jednoduchosti použitia a výkonu.

Táto diskusia je primárne určená pre čitateľov nových v oblasti šablón, ktorí sa chcú dozvedieť, na čo sa používajú, a získať pomoc pri výbere medzi dvoma poprednými možnosťami otvoreného zdroja.

Čo je to šablónový nástroj?

A šablónový motor je komponent, ktorý ako vstup berie pevný text a údaje, integruje ich podľa určitých pravidiel spracovania a na výstup vydáva textový dokument obsahujúci údaje. Nástroje na vytváranie šablón sú veľmi užitočné pri úlohách, ako je vytváranie dynamických webových stránok, dokumentov a e-mailov, a možno ich tiež použiť na generovanie zdrojového kódu.

Šablónové motory sa používajú väčšinou ako komponent pohľadu v architektúre MVC. Šablónový modul podporuje dobré oddelenie medzi skutočnou logikou zobrazenia a vykresleným zobrazením, ktoré sa považuje za dobrú vec. Používanie šablónového jadra vyžaduje pri vytváraní aplikácie určité režijné náklady, ale väčšina vývojárov vidí v prípade zmeny aplikácie rýchlu návratnosť investícií. Oddelenie pohľadu od logiky uľahčuje aktualizáciu vzhľadu a úpravy aplikácie úpravou šablón, namiesto toho, aby ste museli znova písať zdrojový kód. Vzťah je podobný ako v CSS a HTML, kde zmena štýlu vyžaduje skôr malú úpravu súboru CSS, ako veľa revízií HTML.

Prehľad otvorených zdrojov šablón Java

Ako je často pri vývoji na platforme Java, máte na výber veľa šablónových nástrojov založených na Jave. Pokúsil som sa zostaviť komplexný zoznam všetkých motorov šablón Java, ktoré sú momentálne k dispozícii. Niektoré z nich sú reálny šablónové motory v tom zmysle, že neboli vyvinuté s ohľadom na určitý druh aplikácie. Niektoré sú špecializované nástroje, ktoré sa zameriavajú na vytváranie špecifických druhov vytvárania dokumentov, napríklad zdobenie webových stránok. Ak nástroj šablón nie je určený na všeobecné použitie, zobrazí sa explicitný popis typu aplikácie, pre ktorú je určený.

Tabuľka 1. Šablónové motory pre platformu Java

názovVerziaÚčelURLLicencia
Rýchlosť1.5Univerzálny šablónový modul//velocity.apache.org/Softvérová licencia Apache
FreeMarker2.3.10Univerzálny šablónový modul//www.freemarker.org/index.htmlLicencia BSD
SiteMesh2.3Rozloženie a výzdoba webových stránok//www.opensymphony.com/sitemeshLicencia OpenSymphony
TeaServlet2.3internetové stránky//teatrove.sourceforge.netLicencia na čaj
Jamon2.3.0Univerzálny šablónový modul//www.jamon.org/index.htmlVerejná licencia Mozilla
WebMacro Univerzálny šablónový stroj//www.webmacro.org/Všeobecná verejná licencia GNU
$config[zx-auto] not found$config[zx-overlay] not found