Apache Velocity | |
---|---|
Típusú | sablon motor |
Fejlesztő | Apache Software Foundation |
Beírva | Jáva |
Operációs rendszer | Többplatformos szoftver |
Első kiadás | 2006. november 21. [1] |
Hardver platform | Java virtuális gép |
legújabb verzió | 2.3 ( 2021. február 27. ) |
Engedély | Apache 2.0 licenc |
Weboldal | velocity.apache.org |
Médiafájlok a Wikimedia Commons oldalon |
Az Apache Velocity egy nyílt forráskódú projekt, amelyet az Apache Software Foundation fejlesztett ki . Az Apache Velocity korábban Jakarta Velocity néven volt ismert, és az Apache Jakarta Project esernyőprojekt része volt , de azóta egy népszerű projektté vált. A Velocity egy Java - alapú sablonprocesszor ( sablonmotor ) , amely egy egyszerű, de hatékony sablonnyelvet biztosít, amelyhez nem szükséges először a sablonváltozó-modellt elkészíteni: a Java objektumokra való hivatkozások egyszerűen átkerülnek a sablonba, és a motor elemzi a megadott metódusokat és Java-n keresztül A Reflection API lekéri az értékeket. Célja, hogy tiszta elválasztást biztosítson a prezentációs réteg és az üzleti réteg között egy webalkalmazásban (a Model-View-Controller tervezési minta ), azonban nem korlátozódik a webalkalmazások hatókörére.
Néhány gyakori alkalmazástípus, amely használhatja a Velocityt:
Példa egy sablon és egy egyszerű Java alkalmazás használatára. Template.vm nevű sablon forráskódja
## Template.vm < html > < body > nevű sablon ## A $foo egy sablonváltozó Hello $foo World! </ body > </ html >Az egysoros megjegyzéseket a "##" karakterek jelölik, a "$" karakter azt jelzi, hogy a sablonban változónév követi.
Az alkalmazás Java-forráskódja, amely a Java kódban a "name" változót és a sablonban a "$foo" változót köti össze:
import java.io.* ; import org.apache.velocity.* ; import org.apache.velocity.app.Velocity ; public class HelloVelocityWorld { public static void main ( String [ ] args ) throws IOException { Sebesség . init (); // Sebesség inicializálása VelocityContext vc = new VelocityContext ( ); // Velocity-kontextus létrehozása String name = "Velocity" ; v.c. _ put ( "foo" , név ); // a "name" attribútum a $foo változónévhez van kötve a sablonban, és a kontextusba kerül Sablonsablon = Sebesség . _ getTemplate ( "template.vm" , "utf-8" ); // template.vm nevű sablon betöltése BufferedWriter bw = new BufferedWriter ( new OutputStreamWriter ( System . out )); // kimeneti adatfolyam sablont hoz létre . összeolvad ( vc , bw ); // a merge() metódus elfogad egy adatkészletet "vc" objektumként és "bw" stream objektumot bw . öblítés (); bw . bezár (); } }ennek eredményeként a Velocity a következő dokumentumszöveget generálja:
< html > < body > Hello Velocity World! </ body > </ html >Az Apache Velocity sablon szintaxisa és általános fogalmai nagyon hasonlóak a korábbi WebMacro [3] sablonmotoréhoz , amely ma már szintén nyílt forráskódú projekt.
Apache Software Foundation | |||||||
---|---|---|---|---|---|---|---|
Legfelső szintű projektek |
| ||||||
Alprojektek |
| ||||||
Apache |
| ||||||
Egyéb projektek | |||||||
Fejlesztő projektek ( inkubátor ) |
| ||||||
Leszerelt projektek ( tetőtér ) | |||||||
|