2013-11-03 17 views
0

對於我的play 1.2.7應用程序,我必須在散列映射結構中創建一個散列映射,名爲totalNumberAcrossExamTypesAndDates,它包含來自一個複合結構的結果集查詢Postgres數據庫(使用子查詢和集合函數,因此不能使用實體屬性來操縱內容),現在無法遍歷該怪物中的FIRST對象。爲什麼只有第一個對象?因爲所有對象的密鑰都是相同的markerName。最終目標是獲取日期/ markerName/valueForThisMarkerAndDate報告。如何迭代列表中的第一個對象僅在播放1.2.7應用

 date1 date2 

markerName1 X Y markerName2 w^Q

我在尋找的東西會像這樣工作

#{list items:totalNumberAcrossExamTypesAndDates.get(0) as:'firstObject'} 
    <td>${firstObject.key}</td> 
#{/list} 

我該怎麼辦呢?任何指針都是受歡迎的。

如果它使這裏更清楚什麼是totalNumberAcrossExamTypesAndDates實際上是

Map<Date, HashMap<String, Integer>>

回答

0

如果你只是想訪問的第一個對象,你不需要任何迭代。只需使用

${totalNumberAcrossExamTypesAndDates.entrySet()[0].key} 

需要注意的是,除非地圖是一個TreeMap或一個SortedMap,訪問其第一個條目並沒有太大的意義,因爲項目在地圖的順序是不確定的。

如果我沒有正確understabd,對象其實是一個集合,而不是一個地圖,那麼你只需要

${totalNumberAcrossExamTypesAndDates[0].key} 
+0

就是你能收集意思?名單? –

+0

List,或Set或任何實現java.util.Collection的類 –

相關問題