Apache Velocity
![]() | This article includes a list of general references, but it lacks sufficient corresponding inline citations. (March 2010) |
Jakarta Velocity Logo | |
Developer(s) | Apache Software Foundation |
---|---|
Stable release | 1.7
/ November 29, 2010 |
Repository | |
Written in | Java |
Operating system | Cross-platform |
Type | template engine |
License | Apache License 2.0 |
Website | http://velocity.apache.org/ |
Apache Velocity (formerly known as Jakarta Velocity) is an open source software project directed by the Apache Software Foundation. Velocity is a Java-based template engine that provides a simple yet powerful template language to reference objects defined in Java code. Its aim is to ensure clean separation between the presentation tier and business tiers in a Web application (the model–view–controller design pattern).
Uses
Some common types of applications that use Velocity are:
- Web applications: Web designers create HTML pages with placeholders for dynamic information. The page is processed with VelocityViewServlet or any of a number of frameworks which support Velocity.
- Source code generation: Velocity can be used to generate Java source code, SQL, or PostScript, 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 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 will produce the following HTML:
<html>
<body>
Hello Velocity World!
</body>
</html>
The syntax and overall concept of the Apache Velocity templates is very similar to the syntax of the older WebMacro template engine which is now also an open source project. [citation needed]
See also
References
- ^ "PoweredByVelocity". Velocity Wiki. Wiki.apache.org. 2009-12-30. Archived from the original on 23 March 2010. Retrieved 2010-03-29.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help)
Bibliography
- Harrop, Rob; Darwin, Ian (August 30, 2004), Pro Jakarta Velocity: From Professional to Expert (1st ed.), Apress, p. 370, ISBN 978-1-59059-410-0
- Cole, Jim; D. Gradecki, Joseph (July 16, 2003), Mastering Apache Velocity (1st ed.), Wiley, p. 372, ISBN 978-0-471-45794-7
External links