¿Cuál es la forma correcta de dividir la configuración de Spring en varios archivos xml?División de aplicaciónContext en varios archivos
Por el momento no tengo
/WEB-INF/foo-servlet.xml
/WEB-INF/foo-service.xml
/WEB-INF/foo-persistence.xml
Mi web.xml
tiene la siguiente:
<servlet>
<description>Spring MVC Dispatcher Servlet</description>
<servlet-name>intrafest</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/foo-*.xml
</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/foo-*.xml
</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
Las preguntas reales:
- es el enfoque correcto / mejor?
- ¿Realmente necesito especificar las ubicaciones de configuración en las secciones
DispatcherServlet
Ycontext-param
?
¿Qué necesito para tener en cuenta para poder referenciar beans definidos en foo-servlet.xml
de foo-service.xml
? ¿Tiene esto algo que ver con la especificación de contextConfigLocation
en web.xml
?
Actualización 1:
estoy usando primavera marco 3.0. Tengo entendido que no necesito importar recursos de esta manera:
<import resource="foo-services.xml"/>
¿Es esto una suposición correcta?
+1 - mi configuración se parece a esto. Aunque no creo que haya realmente ventajas/desventajas prácticas para esta configuración frente a la especificación de múltiples archivos de configuración en web.xml, parece una semántica –
. Definitivamente creo que la configuración predeterminada es ventajosa: convención sobre la configuración. En lugar de especificar múltiples archivos de configuración con * configuración adicional *, solo tiene un archivo de configuración de "nivel superior" * predeterminado que importará esos mismos archivos que de otra manera tendría que especificar de todos modos. – eljenso
Cuando usa importación, tenga cuidado de no importar el mismo archivo varias veces, (importar dentro de importación, etc.), ya que causará la creación de varios beans y dará lugar a errores difíciles de encontrar. –