Je voudrais stocker mes modèles de FreeMarker dans une table de base de données qui ressemble à quelque chose comme:modèles FreeMarker Charger la base de données
template_name | template_content
---------------------------------
hello |Hello ${user}
goodbye |So long ${user}
Lorsqu'une demande est reçue pour un modèle avec un nom particulier, cela devrait provoquer une requête à exécuter, qui charge le contenu du modèle pertinent. Ce contenu de modèle, avec le modèle de données (la valeur de la variable 'user' dans les exemples ci-dessus), devrait ensuite être transmis à FreeMarker.
Cependant, le FreeMarker API semble supposer que chaque nom de modèle correspond à un fichier du même nom dans un répertoire particulier du système de fichiers. Est-ce que je peux facilement charger mes modèles à partir de la base de données au lieu du système de fichiers?
EDIT: Je l'ai dit que je voudrais être en mesure d'ajouter des modèles à la base de données alors que l'application est en cours d'exécution, donc je ne peux pas simplement charger tous les modèles au démarrage dans une nouvelle StringTemplateLoader (comme suggéré ci-dessous).
Cheers, Don
Très bien, merci! –