ssm框架中界面取值,实体类中包含List怎么取值?
jsp界面
<c:forEach items="${requestScope.cardsel}" var="card">
<tr>
<%-- <c:forEach items="${cardsel.cardTypes}" var="ty"> --%>
<td>${card.cardTypes.cardTypeName}</td>
<td>${card.cardTypes.cardPrice}</td>
<%-- </c:forEach> --%>
<c:forEach items="${cardsel.shopHistories }" var="sh">
<td>${sh.userId}</td>
<td>${sh.buyNum}</td>
</c:forEach>
<%-- <td>${card.cardState.cardStateId}</td> --%>
<td>${card.cardTotal}</td>
<td></td>
</tr>
</c:forEach>
controller层
@RequestMapping("/getAllHistory")
private String getAllHis(Model model) {
System.out.println("123");
List<Card> cardsel = cardSelServiceImpl.getAllSelCard();
/*
for (int i = 0; i < cardsel.size(); i++) {
System.out.println(cardsel.get(i).getShopHistories().get(i).getShopTime());
}*/
System.out.println(cardsel.size());
System.out.println(cardsel);
model.addAttribute("cardsel",cardsel);
return "admin/CardSales";
}
mapper文件
<resultMap type="Card" id="CardResultMap">
<id column="cardId" property="cardId"/>
<result column="cardNo" property="cardNo"/>
<result column="cardPassword" property="cardPassword"/>
<result column="cardDesc" property="cardDesc"/>
<result column="cardTime" property="cardTime"/>
<result column="cardTotal" property="cardTotal"/>
<association property="cardState" javaType="CardState" resultMap="CardStateResult" />
<collection property="cardTypes" ofType="CardType">
<id column="cardTypeId" property="cardTypeId"/><!-- 这里的column:cardTypes对应的是下面查询的别名,而不是表字段名 -->
<result column="cardTypeName" property="cardTypeName"/><!-- property对应JavaBean中的属性名 -->
<result column="cardPrice" property="cardPrice"/>
<!-- ofType="CardType" ofType="ShopHistory"
<association property="cardTypeId" javaType="ShopHistory" resultMap="ShopHistoryResult"/> -->
</collection>
<collection property="shopHistories" ofType="ShopHistory">
<id column="shopHistoryId" property="shopHistoryId"/>
<result column="userId" property="userId"/>
<result column="shopTime" property="shopTime"/>
<result column="buyNum" property="buyNum"/>
<result column="cardTypeId" property="cardTypeId"/>
</collection>
</resultMap>
<resultMap type="CardType" id="CardTypeResult">
<id column="cardTypeId" property="cardTypeId"/>
<result column="cardTypeName" property="cardTypeName"/>
<result column="cardImage" property="cardImage"/>
<result column="cardPrice" property="cardPrice"/>
<!-- <association property="cardTypeId" javaType="Card" resultMap="CardResultMap" />
<association property="cardTypeId" javaType="ShopHistory" resultMap="ShopHistoryResult" /> -->
</resultMap>
<resultMap type="CardState" id="CardStateResult">
<id column="cardStateId" property="cardStateId"/>
<result column="cardStateName" property="cardStateName"/>
</resultMap>
<resultMap type="ShopHistory" id="ShopHistoryResult">
<id column="shopHistoryId" property="shopHistoryId"/>
<result column="userId" property="userId"/>
<result column="shopTime" property="shopTime"/>
<result column="buyNum" property="buyNum"/>
<result column="cardTypeId" property="cardTypeId"/>
</resultMap>
<!-- <select id="getAllCardType" resultMap="">
</select> -->
<select id="getAllSelCard" resultMap="CardResultMap">
select
card.*,
cardType.*,
shopHistory.*
from card
left join
cardType on
card.cardTypeId = cardType.cardTypeId
left join
shopHistory on
card.cardTypeId = shopHistory.cardTypeId
where card.cardState = 1
GROUP BY cardType.cardTypeName
</select>
请问各位大神,这个界面取值我是不是写错了,具体应该怎么写呢,谢谢?刚学框架,很多不懂,谢谢!