Wie übergibt man ein Objekt an die view Frühling MVC3
Ich habe ein einfaches test-Projekt in Spring 3, im Grunde eine Methode im controller holt die Daten aus einer arraylist und "sollte" geben Sie eine Ansicht
Thsi ist, wie die Methode aussieht:
@RequestMapping(value="/showUsers")
public String showUsers(Model model){
ArrayList<User> users=this.copy();
model.addAttribute(users);
return "showUsers";
}
Und hier die jsp (showUsers.jsp)
Beide führen keine Protokolle oder Warnungen in der Ansicht angezeigt, aber ohne die ArrayList<User>
Daten 🙁
<table align="center" border="1">
<tr>
<td>Nr:</td><td>Name:</td><td>Email</td><td>Modify?</td>
</tr>
<c:forEach var="user" items="${users}" varStatus="status">
<tr>
<td><c:out value="${status.count}"/></td><td><c:out value="${user.name}"/></td>
<td><c:out value="${user.email}"/></td><td>Modify</td>
</tr>
</c:forEach>
</table>
Irgendwelche Ratschläge?
Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Modell-Dokumentation Listen 2 Methoden für das hinzufügen von Attributen zu einem Modell. Sie verwenden die version ohne Angabe eines Namen, so der Frühling wird mit einem generierten Namen. Ich denke, dass diese generierten Namen ist nicht, was Sie denken, es ist.
Könnte man hinzufügen, das Modell mit
model.addAttribute("users", users);
@ModelAttribute
(der Wert ist optional - finden Sie unter Dokumentation), aber wieder, das Frühjahr schaffen würden Ihren eigenen Namen Modell-Attribut name. Aber Sie sind liefert Sie den Wert "Benutzer", das ist das, was macht es Arbeit.Danke an Euch alle, ich löste es auf diese Weise: