从 html 表单调用 servlet,无需 web.xml 部署描述符

jef*_*eff 2 java web.xml servlets

如何在不使用 web.xml 部署描述符的情况下从表单的操作中调用 servlet?

Bal*_*usC 5

升级到Java EE 6 / Servlet 3.0,然后您将能够通过注释注册servlet @WebServlet

package com.example;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;

@WebServlet(urlPatterns={"/myServlet/*"})
public class MyServlet extends HttpServlet {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

不再需要了web.xml。上面的操作与下面的操作基本相同:

package com.example;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;

@WebServlet(urlPatterns={"/myServlet/*"})
public class MyServlet extends HttpServlet {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,您可以选择Glassfish v3Tomcat 7作为 Servlet 3.0 实现。


在 Servlet 3.0 之前,您最好的选择可能是前端控制器模式。有一个 servlet,其中web.xml根据请求参数和/或路径信息将请求/操作委托给域对象。一般的MVC框架中也使用这个。