FreeMarker :- Apache FreeMarker is a template engine. It is a Java library to generate text output (HTML web pages, e-mails, configuration files, source code, etc.) based on templates and changing data. FreeMarker was originally created for generating HTML pages in MVC web application frameworks, it isn't bound to servlets or HTML or anything web-related. It's used in non-web application environments as well.
Templates are written in the FTL (FreeMarker Template Language), which is a simple, specialized language. Usually, a general-purpose programming language (like Java) is used to prepare the data (issue database queries, do business calculations). Then, Apache FreeMarker displays that prepared data using templates.
Apache Freemaker is often denoted as the MVC (Model View Controller) pattern. It is popular for dynamic web pages. It helps in separating web page designers (HTML authors) from developers (Java programmers). Designers won't face complicated logic in templates, and can change the appearance of a page without programmers having to change or recompile code.