将特定值从列表传递给Controller Spring MVC

时间:2014-03-22 12:00:55

标签: spring

我的jsp页面中有这样的表格。

<c:if test="${not empty resultMap}">
    <table>
        <tr>
            Id:
        </tr>
        <tr>
            Name:
        </tr>
        <tr>
            Date:
        </tr>
    <c:forEach items="${resultMap}" var="result">
        <tr>
            <td>
                ${result.entryId}
            </td>
            <td>
                ${result.entryName}
            </td>
            <td>
                ${result.entryDate}
            </td>
            <td>
                <a href="viewEntry.htm">View</a><
            </td>
        </tr>
    </c:forEach>
    </table>
</c:if>

输出后的结果。

Id:      Name:   Date:
1        test    20-12-2013 View
2        test1   20-12-2014 View

现在我的要求是在另一个页面中显示条目详细信息。即,当&#34;查看&#34;在Id 1的条目上单击链接,我需要在单独的页面中显示其详细信息。

那么我如何传递&#34; View&#34;的结果映射和entryId?链接被点击到控制器?

这可以通过Spring MVC实现吗?或者应该使用像ajax或jquery这样的任何其他技术?

谢谢, Midhun

1 个答案:

答案 0 :(得分:3)

您没有通过resultMap。您只传递条目的ID:

<a href="<c:url value='viewEntry.htm'>
             <c:param name='entryId' value='${result.entryId}'>
         </c:url>">View</a><

然后,控制器将从请求参数中获取entryId,从数据库中加载条目的详细信息(由于条目ID,唯一标识条目),然后转发到详细信息视图。

您也可以直接将ID作为网址路径的一部分传递。这完全取决于您想要的URL类型,以及您如何配置控制器:

<a href="viewEntry/${entryId}.htm">View</a>