【问题标题】:How to add a object's field in another Object to display it in jsp如何在另一个对象中添加对象的字段以在jsp中显示
【发布时间】:2011-11-28 22:03:50
【问题描述】:

我通过关注获得了一个用户列表

List<User> UserList=usersService.findUsers();

比在此列表上迭代并基于id 获取另一个对象UserActivity,并希望 UserActivity 对象的字段 LastSeen_time。

 Iterator<User> iterator = UserList.iterator();
         while(iterator.hasNext()){
                 User user= iterator.next() ;
                 System.out.println("userA"+user.getId());
                 UserActivity userActivity  =  userActivityService.findUser(user.getId());
                 System.out.println("userActivity"+userActivity.getLastSeen_time());


         }

现在我想将 User 和 UserActivity.LastSeen_time 传递给一个 jsp 页面,我将在其中将其显示为

User.name User.id UserActivity.LastSeen_Time(corresponding time for each id)

我该怎么做,请建议

【问题讨论】:

    标签: hibernate list jsp arraylist


    【解决方案1】:

    只需将必要的信息放在请求范围内即可。对于用户活动,最简单的方法是使用带有用户 ID 作为键的 Map&lt;Long, UserActivity&gt; userActivities。然后,您可以使用 ${userActivities[user.id]} 在 EL 中访问它。

    例如

    List<User> users = userService.list();
    Map<Long, UserActivity> userActivities = new HashMap<Long, UserActivity>();
    
    for (User user : users) {
        userActivities.put(user.getId(), userActivityService.findByUser(user));
    }
    
    request.setAttribute("users", users);
    request.setAttribute("userActivities", userActivities);
    

    然后在 JSP 中

    <table>
      <tr>
        <th>User name</th>
        <th>User ID</th>
        <th>Last seen time</th>
      </tr>
      <c:forEach items="${users}" var="user">
        <tr>
          <td><c:out value="${user.name}" /></td>
          <td>${user.id}</td>
          <td><fmt:formatDate value="${userActivities[user.id].lastSeen}" pattern="yyyy-MM-dd HH:mm:ss" /></td>
        </tr>
      </c:forEach>
    </table>
    

    (我假设getLastSeen() 返回Date

    【讨论】:

      猜你喜欢
      • 2022-06-11
      • 1970-01-01
      • 2013-04-03
      • 2017-07-06
      • 1970-01-01
      • 1970-01-01
      • 2020-05-24
      • 2020-05-27
      • 2020-11-25
      相关资源
      最近更新 更多