Wie man einen Filter hinzufügen, mit WebMvcConfigurerAdapter im Frühjahr?

Mit WebApplicationInitializer kann ich einfach einen filter hinzufügen, um die ServletContext innerhalb der onStartup() Methode.

Wie man einen filter hinzufügen, mit WebMvcConfigurerAdapter? Muss ich XML verwenden?

HINZUFÜGEN 1

Anderen zu helfen, zu verstehen, die Feder Web-Konfiguration leichter, ich zeichne in der folgenden Abbildung.

Jetzt müssen Sie nur zuerst verstehen, die rational hinter Spring-Web-Konfiguration. Und dann Holen die config-Klasse zu Erben und die Methode überschreiben von unten.

Es weniger schmerzhaft ist, um danach zu suchen, als sich daran zu erinnern so viele Dinge.

Wie man einen Filter hinzufügen, mit WebMvcConfigurerAdapter im Frühjahr?

Und einen guten Artikel auf Spring-Web-Initialisierung:

http://www.kubrynski.com/2014/01/understanding-spring-web-initialization.html

HINZUFÜGEN 2

Basierend auf Tunaki's Antwort, ich habe die AbstractDispatcherServletInitializer. Die filter-Registrierung geschieht in den folgenden code:

Wie man einen Filter hinzufügen, mit WebMvcConfigurerAdapter im Frühjahr?

Sogar ich, überschreiben die grünen getServletFilters() Methode, die ich immer noch keinen Zugriff auf die Dyanmic Ergebnis der registerServletFilter(). Also, wie kann ich konfigurieren Sie den filter, indem Sie addMappingForUrlPatterns()?

Es scheint, ich have to überschreiben Sie die ganze registerDispatcherServlet() Methode.

Die Filter werden automatisch zugeordnet, um die DispatcherServlet. Wenn Sie etwas anderes brauchen, überschreiben Sie die onStartup Methode (vergessen Sie nicht, rufen Sie die super.onStartup und registrieren der Filter sich selbst, wie Sie normalerweise tun würde. Das funktioniert noch...
Oder fügen Sie einfach eine weitere Klasse die WebApplicationInitializer... Es können mehrere, es muss nicht ein einziger!.

InformationsquelleAutor smwikipedia | 2015-11-01

Schreibe einen Kommentar