In spring framework are applicationContext.xml and spring-servlet.xml related anyhow ? will the properties files declared in applicationContext be available to DispatcherServlet . On a related note why do I need a *-servlet.xml at all ? why isn't applicationContext.xml alone sufficient ?
Answer:
Spring lets you define multiple contexts in a parent-child hierarchy.
The
The
Beans in
All Spring MVC controllers must go in the
In most simple cases, the
The
applicationContext.xml defines the beans for the "root webapp context", i.e. the context associated with the webapp.The
spring-servlet.xml (or whatever else you call it)
defines the beans for one servlet's app context. There can be many of
these in a webapp, one per Spring servlet (e.g. spring1-servlet.xml for servlet spring1, spring2-servlet.xml for servlet spring2).Beans in
spring-servlet.xml can reference beans in applicationContext.xml, but not vice versa.All Spring MVC controllers must go in the
spring-servlet.xml context.In most simple cases, the
applicationContext.xml context
is unnecessary. It is generally used to contain beans that are shared
between all servlets in a webapp. If you only have one servlet, then
there's not really much point, unless you have a specific use for it.
No comments:
Post a Comment