FreeMarker logo
-  Overview
-  Features
-  FreeMarker
-  中文版手册(PDF)
-  Editor/IDE plugins
-  File generator tool (FMPP)
-  Migrating from Velocity
-  FTL Libraries
-  Table of Contents
-  Short-cut to: Java API
-  Short-cut to: FAQ
-  Short-cut to: Index
-  Short-cut to: Versions
Community, help
-  Mailing list subscription
-  Browse/search the mailing list archives
-  News (nntp) interface
-  Web forums
-  Development builds (automatic)
-  Wiki
-  Blog
-  Twitter
-  Powered by FreeMarker
-  SourceForge project page
-  New source repo (2.4 only ATM)
-  Old source repo (everything else)
-  Who we are


29 Feb 2012: FreeMarker 2.3.19 was released

Attention! This release contains two important security workarounds that unavoidably make it obvious how some applications can be exploited. FreeMarker can't solve these issues on all configurations, so please read the details instead of just updating FreeMarker!

See the changes here...

Download here... (GAE-compatible binary here...)

What is FreeMarker?

FreeMarker is a "template engine"; a generic tool to generate text output (anything from HTML to autogenerated source code) based on templates. It's a Java package, a class library for Java programmers. It's not an application for end-users in itself, but something that programmers can embed into their products.

FreeMarker is designed to be practical for the generation of HTML Web pages, particularly by servlet-based applications following the MVC (Model View Controller) pattern. The idea behind using the MVC pattern for dynamic Web pages is that you separate the designers (HTML authors) from the programmers. Everybody works on what they are good at. Designers can change the appearance of a page without programmers having to change or recompile code, because the application logic (Java programs) and page design (FreeMarker templates) are separated. Templates do not become polluted with complex program fragments. This separation is useful even for projects where the programmer and the HTML page author is the same person, since it helps to keep the application clear and easily maintainable.

Although FreeMarker has some programming capabilities, it is not a full-blown programming language like PHP. Instead, Java programs prepare the data to be displayed (like issue SQL queries), and FreeMarker just generates textual pages that display the prepared data using templates.

Overview of FreeMarker workflow

FreeMarker is not a Web application framework. It is suitable as a component in a Web application framework, but the FreeMarker engine itself knows nothing about HTTP or servlets. It simply generates text. As such, it is perfectly usable in non-web application environments as well. Note, however, that we provide out-of-the-box solutions for using FreeMarker as the view component of Model 2 frameworks (e.g. Struts), which also let you use JSP taglibs in the templates.

OSI Certified FreeMarker is Free, with BSD-style license. It is OSI Certified Open Source Software. OSI Certified is a certification mark of the Open Source Initiative. See the license here...

Read more feature highlights.



Found broken link or other problem with this site?
Report to:
(remove the "REMOVEME" from the address)
Page last generated: 2012-03-01 00:56:26 GMT
All content on this page is copyrighted by the FreeMarker project.
  SourceForge Logo    Powered by FreeMarker