【发布时间】:2021-12-14 21:55:53
【问题描述】:
我在 Tomcat 上有一个带有 Spring MVC 的旧应用程序,我想在其中启动另一个端口上的服务器。
对于这种情况,我通常使用方便的Javalin。但在这种情况下,它不适合我,因为它是使用加载 javax.servlet-api 3.1 的 Jetty 加载的,但应用程序使用 javax.servlet-api 3.0。
任何人都可以为 HttpServer 建议一个类似的框架或方便的模式(以免为每个请求创建一个处理程序)。
在 Javalin 中创建服务器的示例:
public MyServer() {
Javalin app = Javalin.create (). Start (7000);
app.get ("/", ctx -> ctx.result ("Hello World"));
}
【问题讨论】:
-
Servlet 3.1 向上兼容任何 Servlet 3.0 代码。在 Servlet 3.1 容器中运行 Servlet 3.0 应用程序究竟关心什么?
-
仅供参考,有关 Servlet 3.0 和 3.1 之间变化的讨论,请参阅 IBM.com 上的这两个帖子:behavior changes 和 features。
-
Java 18 带来了一个内置的简单网络服务器。见JEP 408: Simple Web Server。抢先体验available now。我不知道这是否满足您的需求。而且这个网络服务器不打算以任何严肃的方式在生产中使用:“提供功能丰富的或商业级的服务器不是目标。存在更好的选择……”
-
@BasilBourque 基本上,问题在于我们有多个服务器用于不同的区域,具有不同的 gradle 配置。这可能很多。
-
您可能想了解12factor.net上的不同服务器或区域没有不同的构建环境
标签: java servlets httpserver javalin