Java 除了web.xml之外,您在哪里可以告诉web应用程序将请求映射到servlet?

Java 除了web.xml之外,您在哪里可以告诉web应用程序将请求映射到servlet?,java,tomcat,Java,Tomcat,我是java web开发的新手。我已经做了研究,但仍然无法独自解决这个问题 我试图分析一个项目,它集成了spring、struts和hibernate。Spring用于POJO和basic应用程序开发,struts似乎用于处理请求,而hibernate和hql则用于数据库接口 我非常非常好奇信息流是如何工作的,特别是对于post方法。通过冗长但有意义的研究,似乎在走出TLS/SSL隧道后,解密的http(解密后“s”部分可能不再存在,lol)请求(是ascii文本)将被发送到java对象(从ja

我是java web开发的新手。我已经做了研究,但仍然无法独自解决这个问题

我试图分析一个项目,它集成了spring、struts和hibernate。Spring用于POJO和basic应用程序开发,struts似乎用于处理请求,而hibernate和hql则用于数据库接口

我非常非常好奇信息流是如何工作的,特别是对于post方法。通过冗长但有意义的研究,似乎在走出TLS/SSL隧道后,解密的http(解密后“s”部分可能不再存在,lol)请求(是ascii文本)将被发送到java对象(从java类实例化,当然可能是编译的)容器。这些对象通常被称为servlet(如果我错了,请纠正我)

当我试图弄清楚容器如何决定将请求发送给哪个servlet时,会出现令人费解的部分。再次通过研究发现,它通常由一个名为web.xml的配置文件来处理,但奇怪的是,我在这个文件中找不到应有的标记,更不用说名称与action属性指定的“target”名称匹配的servlet了,如下所示:

<form action="<%=context %>/handler/register"  method="post">

然而,整个项目在Tomcat服务器上运行良好。我能得出的唯一结论是,必须有其他方法来配置tomcat服务器中的“java对象容器”,以处理用户请求。它们是什么?/是什么


另外,在我的理解中可能有很多错误的概念,例如整个java类对象部分,如果我错了,请纠正我,你会很好的

自Servlet规范的3.0版以来,您还可以使用注释告诉服务器您的Servlet在哪里

在代码中,您正在查找以下内容:

@WebServlet("/handler/register")
public class SomeRandomServlet extends HttpServlet

你想探索更多的是哪一部分还不清楚?你能帮我了解一下下面哪一个你想知道吗。容器如何解析请求?2.在spring+struct+hibernate场景中,servlet或服务器组件是如何配置的?3.html/UI表单操作如何重定向到为使用handler/register映射的servlet定义的post方法?您好,感谢您的回复,如果我只能选择1,我会说它是数字1,容器究竟如何知道将刚刚收到的请求传递给哪个serverlet。我知道一种传统的方法是使用标记并在web.xml中定义所有内容,但我的项目的web.xml中没有这样的东西。这可能会有帮助吗?你真的应该读这本书。它可读性很强,可以回答上面提出的所有问题。