如何在spring中使用控制器在jsp中显示多条记录?

时间:2016-12-12 07:33:29

标签: java spring jsp

enter image description here我有一个用户数据表,下面是使用Spring的JdbcTemplate重试的:

List<UserDetailsBean> userdetails = UserDetailsDaoObj.getallUserDataDetails(u.getId()); 

这些细节需要在jsp中显示,所以即时设置对象 userdetails ,如下所示:

modelAndView.addObject("userdetails",userdetails);

我无法在JSP中检索JSP中使用的代码的详细信息:

<c:forEach var="user" items="${userdetails}"><tr><td>${user.getId()}</td><td>${user.getAddress()}</td><td>${user.getCity()}</td><td>${user.getCountry()}/td></tr></c:forEach>

4 个答案:

答案 0 :(得分:0)

您只需要像这样访问UserDetails的属性

<c:out value="${user.id}" />
<c:out value="${user.address}" />

假设您的班级中存在标准访问者方法

答案 1 :(得分:0)

你需要在JSP中做这样的事情:

<c:forEach items="${userdetails}" var="user">
    <tr>
        <td>User ID: <c:out value="${user.id}"/></td>
        <td>User address: <c:out value="${user.address}"/></td>  
    </tr>
</c:forEach>

答案 2 :(得分:0)

您需要使用JSTL标记来获取值,在您的情况下,它是<c:out>。 另请尝试使用field名称访问元素,而不是getters()

<c:forEach var="user" items="${userdetails}">
    <tr>
       <td><c:out value="${user.id}"/></td>
       <td><c:out value="${user.country}"/></td>
    </tr>
</c:forEach>

答案 3 :(得分:0)

从您发布的内容来看,不清楚您的问题可能是什么,但一个明显的错误,就是其他人在他们的答案中发布的内容。 请注意*为了正常运行,您必须将此行置于JSP之上。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

对于jstl库也是如此。它必须存在于您的类路径中。 link