【发布时间】:2016-05-05 05:20:04
【问题描述】:
Spring MVC web.xml 具有充当 FrontController 的 DispatcherServlet,我对 Spring 中的 Servlet 概念有点困惑,因为我知道 Web 容器中只有一个 Servlet 实例,并且多个线程在 service() 方法上运行但是在 Spring 的情况下,每个 url-mapping 只创建一个 DispatcherServlet 实例,或者我们有多个 DispatcherServlet 实例。
例如: 映射到jsp调用:
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/servlet-config-jsp.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
映射到 HTML 调用:
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/servlet-config-html.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
简单地把创建了多少 DispatcherServlet 的实例放在上面的例子中,用于映射 html 和 jsp 调用。
【问题讨论】:
标签: java spring jsp spring-mvc servlets