簡體   English   中英

Java-顯示清單 <Object[]> 在與struts2的jsp中

[英]Java - Display list<Object[]> in a jsp with struts2

我對Struts2有問題。 我創建了一個List<Object[]> myList並用查詢結果填充它。

我的查詢從兩個表中獲取字段,因此無法將結果放在bean實例上(我想)。 我想在帶有Struts2的JSP上通過迭代器顯示myList ,但無法獲取列表的值。

在DAO上(我使用Hibernate):

List<Object[]> myList = session.createQuery("select a.name, b.description, c.description from test a, test2 b where a.id = b.id "); 

在JSP上,如果我使用以下代碼:

<s:iterator value="myList">
<tr>    
    <td><s:property/></td>
    <td><s:property/></td>
</tr>

它僅顯示列表的一列。

我試過了

<s:iterator value="myList" var="unElem">
    <td><s:property value="unElem.name"/></td>
    <td><s:property value="%{#unElem.description}" /></td>
    <td><s:property value="%{unElem.name}" /></td>
    <td><s:property value="%{#unElem.description}" /></td>  
</s:iterator>

但這不起作用。 你有想法嗎 ?

謝謝。

您列出與iterator標記一起使用的元素可能包含Object[] 尚不清楚myList是什么類型,或者您為Action Bean使用DAO的情況更糟。 Struts可以使用OGNL表示法顯示這些對象,但如果嘗試提交值,則將無法填充該列表。 要顯示Object[]值,您只需要通過列索引訪問它們。

<table>
<thead>
<tr>
    <th>Name:</th>
    <th>Description:</th>
    <th>Description:</th>  
</tr>
</thead>
<tbody>
<s:iterator value="myList" var="unElem">
  <tr>
    <td><s:property value="%{#unElem[0]}"/></td>
    <td><s:property value="%{#unElem[1]}"/></td>
    <td><s:property value="%{#unElem[2]}"/></td>  
  </tr>
</s:iterator>
</tbody>
</table>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM