簡體   English   中英

將Java列表傳遞給html模板

[英]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>  

現在,您將使用accountNameaccountAmount值創建一個Map 您應該做的是添加一個對象列表,每個對象都包含accountNameaccountAmount的值。

它看起來像這樣:

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

在您的模板,你可以在隨后的項目迭代${ accounts } (例如,針對每個accountaccounts )和打印的每個值account.nameaccount.amount

我不熟悉這些模板的確切語法,但是方法應該遵循這些原則。

使用列表和for循環。 查找JSP或JSTL的循環。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM