最近一段時間的項目都是在Play這個框架上進行開發的,挺強大的,但不足之處也挺多的。今天分享下play中強大的標籤,遍歷list,map類型的數據的用法。
- 遍歷單純的list數據,例如:List<People> peoples;
#{list peoples,as:'people'} //peoples爲list對象,people爲實體變量名 ,name則爲實體相對應的屬性值 ${people.name} #{/list}
- 遍歷list中泛化的map類型,例如:List<Map<People>> peoples;
#{list peoples,as:'people'} //peoples爲list對象,people爲實體變量名 ,name則爲實體相對應的屬性值 #{list people,as:'map'}${map.value.property}#{/list} //第二個list將people再次轉換,map取值則像正常的取值,value爲map的value,可是對象類型,property則爲對象類型的屬性值 #{/list}
- 遍歷單純的Map類型,例如:Map<id,People> people;
//如果知道map的key值,則可以直接通過一下方式獲取: ${people.get(key).name} //如果是要遍歷一個map,同樣適用list標籤 #{list people,as:'peo'} ${peo.value.name} //peo爲map變量,value爲key的值,name爲屬性值 #{/list} //如果id是一個對象的話,獲取其對象的值則可以這樣:
#{list people,as:'peo'} ${peo.key.name} //peo爲map變量,key爲對象,key爲實體對象,name爲屬性值 #{/list}
-
遍歷map與list的組合,例如:Map<id,List<People>> people;
//知道ID的情況下可以這樣,通過get方法獲取對象 #{list people.get(id),as:'peo'} ${peo.name} #{list} //如果people是多個map對象,則可以 #{list people,as: 'map'} #{list map.value,as:'people'
- set,if,break標籤的使用:
//模擬遍歷list時的計數器 #{set count:0}//設置變量count #{list data,as:'li'} <h1>${count}</h1> #{if count == 2} <% break %> //跳出 #{/if} #{ifelse count == 3} <h1>${count}</h1} #{/ifelse} #{else} <h1>${count}</h1> #{/else} #{set count:count+1}//自增 #{/list}