1. 程式人生 > >freemarker 遍歷map 不按後臺順序輸出

freemarker 遍歷map 不按後臺順序輸出

我的Java後臺用的是HashMap 存放資料

前臺freemarker 迴圈遍歷輸出

<#if  pmap??> 
                                <#list pmap.keySet() as strKey> 
                                    <tr>
                                <td><input id="cbl_zd_0" type="checkbox" name="cbl_zd$0" /><label
                                    for="cbl_zd_0">${strKey}</label></td>  //取value  ${pmap.get(strKey)}
                                    </tr>
                                </#list> 
           </#if>

發現輸出的順序並不是按照 後臺放入的值的順序, freemaker 重新 按照key的排序輸出了。。。。

若想前臺按照後臺放入的值的順序輸出值, 那就得將HashMap 換成LinkedHashMap 來存 key和value

new LinkedHashMap<String, Object>();

這樣就不會有問題了