[英]Passing a java list to an html template
我有一個html文件的打印輸出,它需要從Map導入,如下所示
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);
並將參數加載到html文件中
<div>
Account: <font size="3"><b>${ accountName }</b> ${accountAmount}</font> <br/>
它的出口看起來像
帳戶15884 5.000
如果我要導出多個記錄怎么辦?
可以說
帳戶15885 2.000
帳戶15886 4.000
帳戶15887 3.000
第二種情況下的html和java代碼應該如何記錄未知數量的記錄?
如果有列表,則可以
map.put("accounts", theAccountList);
在模板(我假設是FreeMarker)中,您可以執行以下操作:
<#list accounts as account>
<div>Account: <font size="3"><b>${account.getName()}</b> ${account.getAmount()}</font> <br/></div>
</#list>
現在,您將使用accountName
和accountAmount
值創建一個Map
。 您應該做的是添加一個對象列表,每個對象都包含accountName
和accountAmount
的值。
它看起來像這樣:
Map<String, Object> map = new HashMap<String, Object>();
List<Account> accounts = new ArrayList<Account>();
map.put("accounts", accounts);
return t.render(map);
在您的模板,你可以在隨后的項目迭代${ accounts }
(例如,針對每個account
的accounts
)和打印的每個值account.name
和account.amount
。
我不熟悉這些模板的確切語法,但是方法應該遵循這些原則。
使用列表和for循環。 查找JSP或JSTL的循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.