java webapp必须在静态上下文或"webcontext"之间进行选择.为什么我们需要一个webcontext只是为了像jetty这样的web服务器,为什么我们必须将所有东西都路由到同一个"webcontext"?
因为Jetty是一个JEE servlet容器,而在JEE世界中,Web应用程序和Web上下文之间存在一对一的关系.目的是能够在同一个servlet容器中运行多个独立的Web应用程序.因此,通过URL路径的第一部分可以轻松地路由到相应的Web应用程序.
从理论上讲,可以为Web应用程序声明多个webcontext,但另有说明.请参阅Java Servlet规范3.1中的第10.2节"与ServletContext的关系" :
servlet容器必须在Web应用程序和ServletContext之间强制执行一对一的对应关系.ServletContext对象为servlet提供了应用程序的视图.