Greifen Sie auf aktuelles Modell im Frühling-mvc zu

8

Ich lerne Spring-MVC 4 von asp.net MVC kommend und suchte nach einer Möglichkeit, Daten an die View zu übergeben, ohne bei jedem Aufruf ein Model Atribute deklarieren zu müssen.

Zum Beispiel, jetzt habe ich das.

%Vor%

Aber was ich wirklich gerne hätte, ist eine Möglichkeit, diese Model-Instanz in meinen Basis-Controller-Methoden zu verwenden, ohne sie als Argument übergeben zu müssen. Ähnlich der Verwendung von ViewData oder TempData in asp.net MVC.

Ist es möglich, Daten auf diese Weise an die Ansicht zu übergeben?

Danke

    
tggm 01.07.2015, 17:09
quelle

2 Antworten

1

Ich habe es geschafft, dieses Problem mit einem Anforderungsinterceptor zu umgehen. Im Wesentlichen:

Auf meiner Basis-Controller-Klasse:

%Vor%

Dann habe ich einen Interceptor hinzugefügt, um die Nachrichtensammlung in das Model zu kopieren:

%Vor%

Dies löscht auf PreHandle alle Nachrichten in der Basis-Controller-Sammlung. Nach der Anfrage (PostHandle) und nachdem das Modell verfügbar ist, kopiere ich die Nachrichtensammlung in das Modell und mache es so in meinen Ansichten verfügbar:

%Vor%

Es ist nicht optimal, aber es funktioniert.

    
tggm 11.07.2015, 19:04
quelle
0

Wenn Sie das Modell nicht als Methodenparameter übergeben möchten, können Sie die Annotation ModelAttribute in einer Methode verwenden:   Ссылка

Beschriften Sie einfach die Methode und Spring fügt automatisch hinzu, was die Methode zum Modell zurückgibt.

%Vor%     
jsc 01.07.2015 17:44
quelle

Tags und Links