2017-06-01 54 views
2

我的一个基本的Java应用程序的理解是,每一个应用程序应该有一个main()方法,但是当我写了一个春天MVC应用程序(不是Spring启动),我不认为有曾经是我写的主要方法。这不是强制性的吗?我在这里错过了什么?或者是在内部的某个地方在Spring中实现?如果是,主要定义在哪里?main()方法

回答

2

Spring MVC的只是一个Servlet的框架,它只能像Tomcat或Webligic Servlet容器内运行。主要的方法在Servlet容器中很深,当你启动的时候会去加载war文件到Java虚拟机中,并将HTTP调用委托给相应的Servlet,然后委托给你的Spring控制器。例如,当您运行Tomcat的startup.bat或startup.sh脚本时,它们最终将运行Java主要方法。

1

用SpringMVC应用程序通常在应用服务器中运行,例如Tomcat的,所以不存在像传统的Java程序没有主要方法。 SpringMVC有一个servlet,由应用程序服务器加载并启动webapp。