如果你的嵌套屬性是一個對象實例,你只是引用它直接,如:
<c:forEach var="surveyItem" items="${surveys}">
${surveyItem.title} <!-- You can use the c:out if you really want to -->
</c:forEach>
那假設你有一個集合Survey
綁定到surveys
屬性的對象,並且每個Survey
都有一個標題。它將打印每個調查的標題。
如果您的嵌套屬性是對象的集合,那麼您可以使用forEach
循環來迭代它們,就像在您的示例中一樣。
<c:forEach var="question" items="${survey.questions}">
${question.title}
</c:forEach>
,將打印的每個Question
的標題,假設你有綁定到survey
屬性單個Survey
對象,並且該Survey
對象具有Question
對象作爲一個字段的集合(與合適的吸氣劑的方法,即getQuestions()
)。
你也可以有嵌套的循環,如:
<c:forEach var="surveyItem" items="${surveys}">
${surveyItem.title}
<c:forEach var="question" items="${surveyItem.questions}">
${question.title}
</c:forEach>
</c:forEach>
,將與各Question
在每個Survey
標題一起打印每Survey
的稱號。
如果因爲某些原因,你決定要傳遞一個Map
,你可以這樣做:
<c:forEach var="entry" items="${surveyMap}">
Map Key: ${entry.key}
Map Value: ${entry.value}
Nested Property: ${entry.value.title}
Nested Collection:
<c:forEach var="question" items="${entry.value.questions}">
${question.title}
</c:forEach>
</c:forEach>
請更改您的問題。 「調查」是列表,地圖嗎? – adatapost