JavaLiveWeb application

Implementacja klasy konfiguracyjnej dla Spring MVC

konfiguracja spring

Odpowiedzialność klasy konfiguracyjnej dla Spring MVC

Przedstawiony sposób, obrazuje, jak skonfigurować Spring bez wykorzystania XML.

Aplikacja bazująca na Spring MVC musi mieć zaimplementowaną klasę konfiguracyjną. Klasa ta dostarcza bazowych informacji do rozpoczęcia pracy przez framework. Posiada ona elementy takie jak:

  • Wskazanie pakietu, które mają zostać przeskanowane w celu poszukiwania beanów;
  • Informacje na temat pozostałych plików konfiguracyjnych;
  • Informacje o mapowaniu żądań.

Implementacja

Klasa konfiguracyjna musi dziedziczyć po AbstractAnnotationConfigDispatcherServletInitializer. Klasa bazowa dostarcza trzy metody, które muszą zostać nadpisane. Przykładowa implementacja może wyglądać następująco:

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

@Configuration
@ComponentScan("app")
public class Config extends AbstractAnnotationConfigDispatcherServletInitializer {

    protected Class<?>[] getRootConfigClasses() {
        return new Class[0];
    }

    protected Class<?>[] getServletConfigClasses() {
        return new Class[] {Config.class} ;
    }

    protected String[] getServletMappings() {
        return new String[]{"/"};
    }

}

Mtody klasy bazowej

  • getRootConfigClasses

    Zwraca konfiguracje bazowego kontekstu aplikacji lub null jeśli rejestrowanie kontkestu głównego nie jest pożadane.

    @Nullable
    protected abstract Class<?>[] getRootConfigClasses();
    
  • getServletConfigClasses

    Zwraca konfiguracje kontekstu serwletu aplikacji lub null w przypadku, kiedy cała konfiguracja jest określona przez konfiguracje bazową.

    @Nullable
    protected abstract Class<?>[] getServletConfigClasses();
    
  • getServletMappings

    Określa mapowanie żądań dla serwletu.

    protected abstract String[] getServletMappings();
    

Wideo

Zobacz fragment szkolenia, który prezentuje prawidłową implementację klasy konfiguracyjną. Stanowi on element kursu dotyczący Spring:

Tags:
Show Buttons
Hide Buttons