📜  在 Eclipse 中创建 Servlet 示例

📅  最后修改于: 2022-05-13 01:54:37.010000             🧑  作者: Mango

在 Eclipse 中创建 Servlet 示例

Servlet是在支持Java的 Web 服务器或应用程序服务器上运行的 Java 程序。它们用于处理从网络服务器获得的请求,处理请求,产生响应,然后将响应发送回网络服务器。

先决条件:

  • 已安装 Eclipse IDE – 您可以从 https://www.eclipse.org/downloads/ 下载
  • 运行服务器——要运行 servlet,我们需要一个服务器。我们可以使用任何 Web 服务器/应用程序服务器,例如 IBM Websphere、Glassfish、Tomcat 等,在本示例中,我们将使用 Apache Tomcat 服务器。您可以从 https://tomcat.apache.org/ 下载最新的 Tomcat 版本

安装 Eclipse 并使用 Tomcat 服务器进行配置后,以下是在 Eclipse IDE 中创建基本 Servlet 的步骤。

创建 Servlet 的步骤

在本例中,我们将创建一个基本 servlet,在浏览器中向用户显示欢迎消息

第 1 步:创建动态 Web 项目

  • 在 Eclipse 中,转到File -> New -> Dynamic Web Project并单击它。

  • 单击Dynamic web project后,将打开以下窗口以输入所需的项目详细信息。

  • 输入项目名称
  • 检查项目保存的位置是否正确。
  • 检查为项目选择的运行时间是否正在显示。如果要更改运行时的任何配置,可以通过单击Modify来完成。
  • 单击下一步。

  • 构建路径上的源文件夹和类文件夹将显示在此处。
  • 单击下一步

  • 这是创建 Web 模块的过程,您的所有 HTML 和 JSP 页面都将在其中添加。
  • 我们还可以生成一个部署描述符——web.xml文件来定义 URL 路径和 servlet 之间的映射,以处理使用这些路径的请求。这也可以使用 Servlet 类中的 @WebServlet() 注释来完成。
  • 在本例中,我们将在 servlet 类中使用注解来映射 URL 路径。
  • 但是为了演示在项目中创建 web.xml 文件,我们还将选中 web.xml 复选框。
  • 单击完成。

项目结构

  • 这样,应该创建项目结构。

第二步:servlet-api.jar 文件

当我们使用 servlet 时,我们需要在我们的项目中有servlet-api.jar文件。这个 jar 是一个包含 Servlet API 的所有接口和类的库,因此我们可以使用它的功能来开发我们的 Web 应用程序。

  • 在此示例中,我们使用 Apache Tomcat 服务器来运行该项目。
  • Tomcat容器是一个开源的Java servlet容器,实现了Java Servlet、JSP等几个核心Java企业功能,所以默认提供了这个servlet-api.jar文件。
  • 如果您仅使用 Tomcat 服务器,则可以检查以下路径中的 jar 文件。

  • 可以看到,在 Apache Tomcat 下,默认有一个 servlet-api.jar 文件。

对于不同的服务器:

  • 如果您使用不同的服务器并且 servlet-api.jar 文件不存在,您可以从 Maven 存储库下载它。
  • 将下载的 jar 文件作为外部 jar 添加到您的项目中,如下所示,

  • 转到项目名称并右键单击它。转到构建路径-> 配置构建路径

  • 在此窗口中,它将显示与项目关联的所有库,您还可以将任何所需的 jar 文件添加到项目中。
  • 转到Libraries选项卡并单击Add External JARs
  • 从您下载并添加的位置选择 servlet-api.jar 文件。

  • 添加 jar 文件后,单击应用并关闭。
  • 添加的 jar 文件将在项目的 lib 文件夹下可见。

第 3 步:创建 Servlet 类

  • 要创建 Servlet,请转到文件夹src -> New -> Servlet。

  • 如果没有 Servlet 选项,请转到其他并搜索 Servlet。

  • 在包中创建Java类是一种很好的做法。
  • 输入包名类名
  • Java Servlet 在 javax.servlet.http.HttpServlet 下可用。所以超类是HttpServlet。
  • 单击下一步。

  • 正如我们在创建项目时了解 URL 映射一样,我们可以在此处为特定的 servlet 指定这些 URL 映射。
  • 此处指定的 URL 应用于映射 web.xml 中的 servlet 或使用注释。
  • 它将显示默认映射名称,但如果需要,您可以通过选择 URL 并单击编辑来更改它。
  • 单击下一步。

  • HTTP Servlet 是一个特定于协议的 Servlet,它提供了上面屏幕截图中显示的所有这些方法。
  • 我们可以根据我们的要求使用这些方法。
  • 例如,如果我们想在初始化 servlet 时实现逻辑,我们可以重写 init() 方法。
  • 对于 HTTP GET 请求,要获取请求的信息,我们可以使用 doGet() 方法。
  • 在此处获取有关 HTTP Servlet 方法的更多信息。
  • 在此示例中,我们只是向用户显示欢迎消息。因此,选择doGet复选框。
  • 单击完成。

你好Servlet。Java

  • 如上所示,它创建了HelloServlet。带有我们选择的doGet()方法的Java Servlet 类。
  • 如您所见,它自动为该 servlet 提供了 @WebServlet(“/HelloServlet”) 注解来映射 URL。因此,无需在 web.xml 文件中再次输入映射。
  • 在Java中,每个类都会有一个默认构造函数,因此该构造函数也会在此处自动生成。
  • 如果您了解Java中的序列化概念,那么在 Eclipse IDE 中创建 Servlet 时也会生成作为与每个序列化类关联的版本号的serialVersionUID

第 4 步:实现逻辑

  • 在 doGet() 方法中,实现向用户显示欢迎消息的逻辑。

你好Servlet。Java

Java
package com.welcome;
  
import java.io.IOException;
import java.io.PrintWriter;
  
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
  
@WebServlet("/HelloServlet")
public class HelloServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
         
    public HelloServlet() {
        super();
        // TODO Auto-generated constructor stub
    }
  
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  
        response.setContentType("text/html");
          
        PrintWriter out = response.getWriter();
          
        out.print("");
        out.print("

Welcome to GeeksForGeeks

");         out.print("");            } }


  • 一旦我们从浏览器获得 Get 请求,就会执行 doGet() 方法。
  • 在这里,我们将响应内容类型设置为“text/html”,以便发送到客户端/浏览器的响应将被视为 text/html。
  • 在Java.io 包中, Java提供了一个PrintWriter类来将格式化的输出打印到文本输出流。
  • 因此,获取 PrintWriter 对象并打印欢迎消息。
  • 您需要在 servlet 类中添加所有必需的包。
  • 由于我们将内容类型指定为“text/html”,我们在输出流中提到的标签——out.print ()将被视为 HTML 标签,并且消息“Welcome to GeeksForGeeks”将写入响应浏览器。

第 5 步:运行项目

  • 右键单击HelloServlet。 Java类,运行方式->在服务器上运行。

  • 如果你想调试 servlet,你也可以在这里点击调试。

  • 确保在 localhost 上正确配置了 Tomcat 服务器,然后单击Next。

  • 检查您创建的项目是否在配置部分中,然后单击完成。
  • 如果项目显示在可用部分中,请选择项目并单击添加以在服务器上配置项目。

输出:

  • 一旦服务器启动,它将配置并运行 HelloServlet。服务器上的Java文件。

  • 您可以在浏览器中运行 URL: http://localhost:8080/JavaServlets/HelloServlet
  • 确保正确映射 Servlet “/HelloServlet” 中指定的 URL。