Cargar plantillas de FreeMarker desde la base de datos

Me gustaría almacenar mis plantillas de FreeMarker en una tabla de base de datos que se parece a:

template_name | template_content
---------------------------------
hello         |Hello ${user}
goodbye       |So long ${user}

Cuando se recibe una solicitud de una plantilla con un nombre en particular, esto debería hacer que se ejecute una consulta, que carga el contenido de la plantilla relevante. El contenido de esta plantilla, junto con el modelo de datos (el valor de la variable 'usuario' en los ejemplos anteriores), debe pasarse a FreeMarker.

sin embargo, elAPI de FreeMarker parece suponer que cada nombre de plantilla corresponde a un archivo del mismo nombre dentro de un directorio particular del sistema de archivos. ¿Hay alguna manera de que mis plantillas se carguen fácilmente desde la base de datos en lugar del sistema de archivos?

EDITAR: Debería haber mencionado que me gustaría poder agregar plantillas a la base de datos mientras se ejecuta la aplicación, por lo que no puedo simplemente cargar todas las plantillas al inicio en un nuevo StringTemplateLoader (como se sugiere a continuación).

Saludos, Don

Respuestas a la pregunta(5)

Su respuesta a la pregunta