Reputation:
The calculate method takes two parameters, sessionUser.getUserId()
and user.getUserId()
, from the list below.
I want to show the result of this method that returns a String value for each user in jsp. I use c:foreach
to display users in jsp page.
How can I do That?
User sessionUser=(User)request.getSession(true).getAttribute("user");
List<User> users=groupService.getUserGroup(group);
model.addAttribute("users",users);
for(User user:users){
model.addAttribute("result",
calculateSililarity.calculate(sessionUser.getUserId(), user.getUserId()));
}
Upvotes: 2
Views: 13161
Reputation: 3456
Sounds like you're looking for a Map.
Map<User, String> userMap = new HashMap<User, String>();
for (User user : users) {
userMap.put(user, calculateSililarity.calculate(sessionUser.getUserId(), user.getUserId()));
}
model.addAttribute("userMap", userMap);
In your JSP you would loop through the map as follows.
<c:forEach var="entry" items="${userMap}">
User ID: <c:out value="${entry.key.userId}"/>
Similarity: <c:out value="${entry.value}"/>
</c:forEach>
Upvotes: 3