gpt4 book ai didi

用于处理 http 请求的服务器的 Java Web 服务框架推荐

转载 作者:行者123 更新时间:2023-12-01 11:10:16 24 4
gpt4 key购买 nike

我需要创建一个服务器来处理 http 请求并路由到适当的操作。我计划使用 Java 只是因为它是我最熟悉的。

我在使用 Java 和 Jersey 之前创建了一个 Web 应用程序。但是这个 Web 服务器不需要是 Restful 的。它需要发送 RPC 风格的请求。所以url会有查询参数。

什么是一个好的 Java 框架?我尝试过 Spring 但停止了,因为它对我来说似乎太过分了。我对 Spring 的理解是,它是一个用于具有许多 Activity 部件的大型项目的框架。 Spring 使这些部分之间的连接更加容易。

我正在考虑 jax-ws,但从我找到的资源来看,它似乎已经过时了。

最佳答案

如果您不喜欢或者不愿意使用Spring/任何其他框架,那么您可以简单地编写一个简单的Servlet,它通过不同的 Controller 类处理您的请求(处理业务逻辑)。

为整个应用程序保留一个 Servlet 只不过是遵循 FrontController 模式,大多数流行框架(Spring/Struts/JSF/等)都这样做,这有几个优点。

Web.xml:

<web-app>
<display-name>MyApplication</display-name>
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.myapp.MyServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

MyServlet.java(充当处理所有应用程序请求的前端 Controller ):

package com.myapp;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MyServlet extends HttpServlet {

@Override
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException {

if(request.getRequestURI().equals("/abc")) {
new ABC().callabc();
} else if(request.getRequestURI().equals("/def")) {
new DEF().calldef();
}

//ADD Code here to Send Ack back to the caller

// Ack Code Ends here
}
}

关于用于处理 http 请求的服务器的 Java Web 服务框架推荐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32461988/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com