Apache Velocity: Difference between revisions
Appearance
Content deleted Content added
reworded first sentence for clarity |
No edit summary |
||
Line 5: | Line 5: | ||
| caption = |
| caption = |
||
| developer = [[Apache Software Foundation]] |
| developer = [[Apache Software Foundation]] |
||
| |
| = 1.5 |
||
| latest release date = {{release date|2007|03|06}} |
|||
| latest_release_date = [[March 6]], [[2007]] |
|||
| latest preview version = |
|||
| latest_preview_version = |
|||
| |
| = |
||
| operating_system = [[Cross |
| operating_system = [[Crossplatform]] |
||
| |
| = [[()|Java]] |
||
| genre = [[template engine (web)|template engine]] |
| genre = [[template engine (web)|template engine]] |
||
| license = [[Apache License]] 2.0 |
| license = [[Apache License]] 2.0 |
||
Line 30: | Line 30: | ||
## Velocity Hello World |
## Velocity Hello World |
||
<html> |
<html> |
||
<body> |
<body> |
||
#set( $foo = "Velocity" ) |
#set( $foo = "Velocity" ) |
||
## followed by |
## followed by |
||
Hello $foo World! |
Hello $foo World! |
||
</body> |
</body> |
||
</html> |
</html> |
||
</source> |
</source> |
||
Line 42: | Line 42: | ||
<source lang="xml"> |
<source lang="xml"> |
||
<html> |
<html> |
||
<body> |
<body> |
||
Hello Velocity World! |
Hello Velocity World! |
||
</body> |
</body> |
||
</html> |
</html> |
||
</source> |
</source> |
Revision as of 09:14, 31 August 2008
Jakarta Velocity Logo | |
Developer(s) | Apache Software Foundation |
---|---|
Stable release | 1.5
/ March 6, 2007 |
Repository | |
Written in | Java |
Operating system | Cross platform |
Type | template engine |
License | Apache License 2.0 |
Website | http://velocity.apache.org |
Apache 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 (see model-view-controller design pattern). Some common types of applications which 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. This approach to web application development is called Model-view-controller (MVC), and is intended to be a direct replacement for applications developed with JSP or PHP.
- Source code generation: Velocity can be used to generate Java source code, SQL, or PostScript, based on templates. The PoweredByVelocity page lists a number of open source, and commercial development software packages which use Velocity in this manner.
- 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 text:
<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.