我是Java服务器端编程的新手,我的问题基本上是使用Servlets(低级别而不使用spring mvc等)到达起点,然后从那里开始构建我的方式,来自节点.js背景,其中路由定义将以函数(app.get(request, response) {}
,app.post(request, response) {}
等)开头,并且该函数将在其中一个http的参数中接收request
和response
方法(GET,POST,PUT,DELETE)。
如果有人可以请求帮助我们如何在一个servlet类中定义路径的方法(让我们说/users
),并在提供请求的同时映射到http方法并在其参数中作出反应。
我的尝试
public class FirstServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException , IOException {
}
答案 0 :(得分:4)
我相信你想要的是Servlet mappings。您还可以找到a bit more info here
但基本上这就是你告诉web服务器(例如Tomcat)使用什么servlet来回答发送给给定url模式的请求的方式。因此,您将模式映射到要用于服务它的servlet。
您还可以在inner workings here找到更多信息。
编辑:如果要处理所有动词,可以使用服务。从第一个链接:
您可能已经看到其他servlet示例实现了doPost()和/或doGet()方法。这些方法仅回复POST或GET请求;如果要从单个方法处理所有请求类型,则servlet可以简单地实现service()方法。 (但是,如果选择实现service()方法,则不能实现doPost()或doGet()方法,除非在service()方法的开头调用super.service()。)HTTP servlet规范描述了用于处理其他请求类型的其他方法,但所有这些方法统称为服务方法。
所有服务方法都使用相同的参数参数。一个 HttpServletRequest提供有关请求和您的请求的信息 servlet使用HttpServletResponse来回复HTTP客户端。该 服务方法如下所示:
public void service(HttpServletRequest req, HttpServletResponse res)抛出IOException {...}