Freemarker (http://freemarker.sourceforge.net/) es un librería, que entre otras cosas, permite realizar plantillas y el manejo de ellas para la generación de ficheros.
Paso a detallar una guía rápida de como usar el API para realizar un pequeño ejemplo en Java, yo lo considero interesante y muy útil.
Paso1: Generar la plantilla
La plantilla puede ser cualquier tipo de fichero, para poner las marchas de la plantilla se utilizan la notación ${nombreMarca}
Paso2: Llamadas al API para realizar la sustitución
private void runFreemarker()
{
try {
String valorMarca = «….»;
Map<String,String> data = new HashMap<String,String>();
data.put(«nombreMarca», valorMarca);
Configuration cfg = new Configuration();
// Definir el path donde se encuentran las plantillas o plantilla a usar
cfg.setDirectoryForTemplateLoading(new File(DIR_TEMPLATE));
cfg.setObjectWrapper(new DefaultObjectWrapper());
// Indicar el nombre de la plantilla a utilizar
Template temp = cfg.getTemplate(template);
// Definir el nombre de fichero de salida
FileOutputStream output = new FileOutputStream(nameFileOutput);
Writer out = new OutputStreamWriter(output);
temp.process(data, out);
out.flush();
} catch (TemplateException e) {
e.printStackTrace();
}
}
La salida de este método es la generación de un fichero (nameFileOutput) donde las marcas se han sustituido por el valor correspondiente.
Hay que tener cuenta la premisa de que si existe un marca a la cual no se le paso un valor, el procedimiento falla pues no puede realizar la sustitución completa.

Deja un comentario