Jump to content

Apache Velocity: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Updating Project Logo to SVG version
Monkbot (talk | contribs)
m Task 16: replaced (3×) / removed (0×) deprecated |dead-url= and |deadurl= with |url-status=;
Line 24: Line 24:
Some common types of applications that use Velocity are:
Some common types of applications that use Velocity are:
* [[Web application]]s: [[Web developer]]s render [[HTML]] page structures. The content is populated with dynamic information. The page is processed with ''VelocityViewServlet'' or any of a number of frameworks that support Velocity.
* [[Web application]]s: [[Web developer]]s render [[HTML]] page structures. The content is populated with dynamic information. The page is processed with ''VelocityViewServlet'' or any of a number of frameworks that support Velocity.
* [[Source code]] generation: Velocity can be used to generate [[Java (programming language)|Java]], [[SQL]], or [[PostScript]] source code, based on [[Web template|templates]]. A number of [[Open-source software|open source]] and commercial development [[software package (installation)|software packages]] use Velocity in this manner.<ref>{{cite web|url=http://wiki.apache.org/velocity/PoweredByVelocity |title=PoweredByVelocity | work = Velocity Wiki |publisher=Wiki.apache.org |date=2009-12-30 |accessdate=2010-03-29| archiveurl= https://web.archive.org/web/20100323223306/http://wiki.apache.org/velocity/PoweredByVelocity| archivedate= 23 March 2010 | deadurl= no}}</ref>
* [[Source code]] generation: Velocity can be used to generate [[Java (programming language)|Java]], [[SQL]], or [[PostScript]] source code, based on [[Web template|templates]]. A number of [[Open-source software|open source]] and commercial development [[software package (installation)|software packages]] use Velocity in this manner.<ref>{{cite web|url=http://wiki.apache.org/velocity/PoweredByVelocity |title=PoweredByVelocity | work = Velocity Wiki |publisher=Wiki.apache.org |date=2009-12-30 |accessdate=2010-03-29| archiveurl= https://web.archive.org/web/20100323223306/http://wiki.apache.org/velocity/PoweredByVelocity| archivedate= 23 March 2010 | = }}</ref>
* Automatic [[email]]s: Many applications generate automatic emails for account signup, [[password]] reminders, or automatically sent reports. Using Velocity, the email [[web template|template]] can be stored in a [[text file]], rather than directly embedded in Java code.
* Automatic [[email]]s: Many applications generate automatic emails for account signup, [[password]] reminders, or automatically sent reports. Using Velocity, the email [[web template|template]] can be stored in a [[text file]], rather than directly embedded in Java code.
* [[XML]] transformation: Velocity provides an [[Apache Ant|Ant]] task, called Anakia, which reads an XML file and makes it available to a Velocity template. A common application is to convert [[software documentation]] stored in a generic "xdoc" format into a styled HTML document.
* [[XML]] transformation: Velocity provides an [[Apache Ant|Ant]] task, called Anakia, which reads an XML file and makes it available to a Velocity template. A common application is to convert [[software documentation]] stored in a generic "xdoc" format into a styled HTML document.
Line 79: Line 79:
|archive-url = https://web.archive.org/web/20090705091506/http://www.apress.com/book/view/9781590594100
|archive-url = https://web.archive.org/web/20090705091506/http://www.apress.com/book/view/9781590594100
|archive-date = July 5, 2009
|archive-date = July 5, 2009
|dead-url = yes
|url =
}}
}}
*{{citation
*{{citation
Line 96: Line 96:
|archive-url = https://web.archive.org/web/20121007002812/http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471457949.html
|archive-url = https://web.archive.org/web/20121007002812/http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471457949.html
|archive-date = October 7, 2012
|archive-date = October 7, 2012
|dead-url = yes
|url =
}}
}}
{{refend}}
{{refend}}

Revision as of 02:51, 12 September 2019

Apache Velocity
Developer(s)Apache Software Foundation
Stable release
2.1 / March 31, 2019 (2019-03-31)
Repository
Written inJava
Operating systemCross-platform
Typetemplate engine
LicenseApache License 2.0
Websitehttp://velocity.apache.org/

Apache Velocity is a Java-based template engine that provides a template language to reference objects defined in Java code. It aims to ensure clean separation between the presentation tier and business tiers in a Web application (the model–view–controller design pattern).

Velocity is an open source software project hosted by the Apache Software Foundation. It is released under the Apache License. Jon Scott Stevens derived name from the AltiVec Velocity Engine in the PowerPC G4 chip.

Uses

Some common types of applications that use Velocity are:

  • Web applications: Web developers render HTML page structures. The content is populated with dynamic information. The page is processed with VelocityViewServlet or any of a number of frameworks that support Velocity.
  • Source code generation: Velocity can be used to generate Java, SQL, or PostScript source code, based on templates. A number of open source and commercial development software packages use Velocity in this manner.[1]
  • Automatic emails: Many applications generate automatic emails for account signup, password reminders, or automatically sent reports. Using Velocity, the email template can be stored in a text file, rather than directly embedded in Java code.
  • XML transformation: Velocity provides an Ant task, called Anakia, which reads an XML file and makes it available to a Velocity template. A common application is to convert software documentation stored in a generic "xdoc" format into a styled HTML document.

Code example

The following template:

## Velocity Hello World
<html>
    <body>
        #set( $foo = "Velocity" )
        ## followed by
        Hello $foo World!
    </body>
</html>

processed by Velocity produces the following HTML:

<html>
    <body>
        Hello Velocity World!
    </body>
</html>

The syntax and overall concept of the Apache Velocity templates is similar to the syntax of the older WebMacro template engine, which is now also an open source project. [citation needed]

See also

References

  1. ^ "PoweredByVelocity". Velocity Wiki. Wiki.apache.org. 2009-12-30. Archived from the original on 23 March 2010. Retrieved 2010-03-29.

Bibliography