¿Qué significa "marcador libre"?
FreeMarker es un motor de plantillas: una herramienta universal que genera texto de salida (páginas HTML, correos electrónicos, archivos de configuración, código fuente, etc.) basado en plantillas y datos a modificar. No es para usuarios finales, sino una biblioteca de clases Java que los programadores pueden integrar en los componentes del producto que desarrollan.
FreeMarker es gratuito y se publica bajo la licencia Apache versión 2.0. Sus plantillas están escritas en FreeMarker Template Language (FTL), un lenguaje sencillo diseñado específicamente. Los datos deben prepararse para su visualización en lenguajes de programación reales, como consultas de bases de datos y operaciones comerciales, y luego la plantilla muestra los datos preparados. En la plantilla, la principal preocupación es cómo mostrar los datos, mientras que fuera de la plantilla, la principal preocupación es qué datos se muestran.
En cualquier sitio web que utilice páginas web estáticas, la tasa de uso de FreeMarker es mayor que la de cualquier otra tecnología, y HTML estático también se utiliza en algunas estrategias de almacenamiento en caché, por lo que es adecuado para sitios web que utilizan consultas frecuentes a bases de datos. pero actualizaciones de contenido, con pocas aplicaciones, FreeMarker se puede utilizar para representar HTML estáticamente. Por ejemplo, parte de la información de configuración pública en el sitio web se administra básicamente en segundo plano y se almacena en la base de datos. El programa front-end llamará a esta información en grandes cantidades y consultará la base de datos cada vez que se llame, pero. la frecuencia de actualización de esta información será muy pequeña, por lo que también puedes considerar hacer que esta parte del contenido sea estática al actualizarla en segundo plano, evitando así una gran cantidad de solicitudes de acceso a la base de datos y mejorando así el rendimiento del sitio web.
Una ventaja de FreeMarker en comparación con JSP es que no puede separarse fácilmente del lenguaje de plantilla y comenzar a escribir código Java, lo que reduce la posibilidad de que la lógica del dominio se filtre peligrosamente en la capa de vista. Su desventaja es que requiere alguna configuración adicional para integrarlo sin problemas en la aplicación, es posible que algunos entornos de desarrollo integrados (IDE) no lo admitan completamente y, por supuesto, es posible que los desarrolladores o diseñadores también necesiten aprender un lenguaje de plantilla desconocido. Los archivos JAR relevantes se agregarán a WEB-INF/lib (y se incluirán en Spring si es necesario).