有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在spring中使用controller在jsp中显示多条记录?

enter image description here我有一个用户数据表,下面使用Spring的JdbcTemplate检索了这些数据:

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

这些细节需要在jsp中显示,因此im设置对象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) 个答案

  1. # 1 楼答案

    您需要在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. # 2 楼答案

    您需要使用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. # 3 楼答案

    从你发布的内容来看,你的问题可能并不明确,但一个明显的错误是其他人在他们的答案中发布了什么。 请注意,*为了正确操作,必须将这一行放在JSP的顶部

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

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

  4. # 4 楼答案

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

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

    假设类中存在标准的访问器方法