Ladereihenfolge contextConfigLocation in web.xml der Spring-Servlet-Projekt

Nehme an, dass ich eine Spring Java Projekt, und ich bin versucht, konfigurieren Sie es als ein web-server servlet. Hier ist eine abgespeckte version des web.xml Datei:

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        /WEB-INF/spring/generalApplicationContext.xml
    </param-value>
</context-param>

<servlet>
    <servlet-name>my-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/specificApplicationContext.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>my-servlet</servlet-name>
    <url-pattern>/foo/*</url-pattern>
</servlet-mapping>

Die wichtige Sache zu beachten ist hier, dass ich angegeben habe, zwei XML-Dateien geladen werden. Man ist sich allgemein für meine gesamte Anwendung, während der andere ist spezifisch für die "mein-servlet" - servlet. Für ein setup mit nur einem servlet-mapping, das würde keinen Sinn machen. Aber mein Projekt hat mehrere servlet-mappings und jeder hat spezifische Feder-Einstellungen zu Ihnen.

Meine Frage: Die contextConfigLocation wird zuerst geladen werden, bis zum Frühjahr? Wird es das generalApplicationContext.xml oder wird es das specificApplicationContext.xml? Noch wichtiger ist, wird die Reihenfolge des Ladens auch eine Rolle? Von meine debugging-Bemühungen, es scheint offensichtlich, dass es funktioniert, weil ich bekomme unterschiedliche Fehler bei mir bewegen sich einige unabhängige Spring-Konfiguration aus einer Datei in die andere.

NB:Ob oder nicht, mit mehreren spring-Konfigurationen für mehrere servlet-mappings ist eine gute Praxis ist umstritten. Dasselbe gilt für die Verwendung von XML-config anstatt der neuen Java-config. Aber das ist nicht das, was ich bin versucht zu Fragen, hier. Lassen Sie uns versuchen zu konzentrieren, auf meine wichtigste Frage.

InformationsquelleAutor der Frage ecbrodie | 2014-12-18

Schreibe einen Kommentar