在SpringMVC中,人们通常构建一个调度Servlet来控制其他Servlet。管道包括对web.xml的请求,然后将该请求路由到org.springframework.web.servlet.DispatcherServlet类的调度器。URL模式可以是/或*.htm*,以确保所有请求都到达那里。问题是:在这种模式中,web.xml的目的是什么?有人会认为这只是无用的开销。我的意思是,如果你不打算使用另一个调度员…还是你?
web.xml
org.springframework.web.servlet.DispatcherServlet
/
*.htm*
cl25kdpy1#
基本上,在一个常规的Java应用程序上下文中,将在一些自创建的主方法中获取,这意味着主方法是您的起点。应用程序将从主应用程序运行,然后将转到其他方法。
public class FooClass{ public static void main(String[] args) { //some code }
但在SpringWeb应用程序中,起点实际上是web.xml。它从这里开始,然后流到其他定义的类和方法例如,当您编写这些代码时,您基本上为web应用程序提供了从这里开始的顺序你定义了你的起点。认为它是普通Java中的主要方法
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc-validation-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
在第二部分,你们给调度员下命令,从这里开始。这意味着您给出了一个url模式-起点。你可以在这里给出任何东西,但“/”这是常见用法
<!-- Step 2: Set up URL mapping for Spring MVC Dispatcher Servlet --> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
我希望这是清楚的。否则要求更多的解释。
1条答案
按热度按时间cl25kdpy1#
基本上,在一个常规的Java应用程序上下文中,将在一些自创建的主方法中获取,这意味着主方法是您的起点。应用程序将从主应用程序运行,然后将转到其他方法。
但在SpringWeb应用程序中,起点实际上是web.xml。它从这里开始,然后流到其他定义的类和方法
例如,当您编写这些代码时,您基本上为web应用程序提供了从这里开始的顺序
你定义了你的起点。认为它是普通Java中的主要方法
在第二部分,你们给调度员下命令,从这里开始。这意味着您给出了一个url模式-起点。你可以在这里给出任何东西,但“/”这是常见用法
我希望这是清楚的。否则要求更多的解释。