Pasar una lista java a una plantilla html

Tengo una exportación impresa de un archivo html que toma importaciones de un Mapa como se muestra a continuación

Template t = TemplateLoader.load("Printing/acount.html");
Map<String, Object> map = new HashMap<String, Object>();
map.put("accountName ", e.accountName);
map.put("accountAmount ", acAmount);
    return t.render(map);

Y carga los parámetros al archivo html.

<div>
     Account: <font size="3"><b>${ accountName }</b> ${accountAmount}</font> <br/>

Y su exportación parece

Cuenta 15884 5.000

¿Qué pasa si quiero tener múltiples registros en mi exportación?

Digamos

Cuenta 15885 2.000

Cuenta 15886 4.000

Cuenta 15887 3.000

¿Cómo debería ser el código html y java en el segundo caso para pasar un número desconocido de registros?

preguntado el 12 de junio de 12 a las 15:06

Tal vez debería decirnos qué motor de plantilla/API está utilizando. -

Lo siento, estoy usando el marco de juego -

3 Respuestas

Si tienes List, puedes hacer

map.put("accounts", theAccountList);

En la plantilla (que supongo que es FreeMarker) haces:

<#list accounts as account>
 <div>Account: <font size="3"><b>${account.getName()}</b> ${account.getAmount()}</font> <br/></div>
</#list>  

Respondido el 12 de junio de 12 a las 15:06

Ahora está creando un Map con valores para accountName y accountAmount. Lo que debe hacer es agregar una lista de objetos que contengan cada uno un valor para accountName y accountAmount.

Se vería algo como esto:

Map<String, Object> map = new HashMap<String, Object>();
List<Account> accounts = new ArrayList<Account>();
map.put("accounts", accounts);
return t.render(map);

En su plantilla, puede iterar sobre los elementos en ${ accounts } (por ejemplo, para cada account in accounts) e imprima cada valor de account.name y account.amount.

No estoy familiarizado con la sintaxis exacta de estas plantillas, pero el enfoque debería ser similar.

Respondido el 12 de junio de 12 a las 15:06

Utilice una lista y un bucle for. Busque JSP o JSTL para bucle.

Respondido el 12 de junio de 12 a las 15:06

el OP estaba hablando de playframework, JSP y JSTL no se usan. - Codemwnci

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.