當咱們須要ognl表達式獲取一個表的數據進行展現時,可是須要展現的數據I關聯到了另外一張表的時候咱們有兩種不一樣的處理方式,第一種當關聯到另外一張表的數據較多的時候,咱們採用的是list結構來存放數據,咱們能夠採用嵌套遍歷標籤來進行取值,這樣效率會變得比較低,而當咱們關聯到另外一張表中的數據較少的時候咱們能夠用一個map數據結構來存放數據,用map結構存放當咱們須要獲取數據的時候回比較方便。例如:session
<s:iterator value="#session.uesrlist" var="bean"> <tr> <td><s:property value="#bean.username"/></td> <td><s:property value="#bean.password"/></td> <td><s:property value="#bean.age"/></td> <s:iterator value="#session.viplist"> <s:if test="#bean.vipId==vipId"> <td><s:property value="vipName"/></td> </s:if> </s:iterator> <!-- 因爲VIP對象只有兩個屬性,而且一個能夠決定另外一個,因此咱們能夠把取出來的VIP對象放在一個map當中,這樣的話咱們不須要每次去遍歷這個VIP對象的list 直接用:<s:property vlaue="vipmap[#bean.vipId]" />就能夠直接取出,提升了運行效率。 --> </tr> </s:iterator> |