Java 中的 Servlet
本文介绍了 servlet 是什么以及如何在 Java 中创建 servlet。
什么是小服务程序
Servlet 是一种服务器端技术,用于在 Java 中创建 Web 应用程序。它创建动态 Web 应用程序并提供由多个类和接口组成的 API 来管理应用程序。
使用 Servlet 的优点
在 servlet 出现之前,CGI(通用网关接口
)程序用于创建存在多个性能问题的服务器端程序。Servlet 比 CGI 具有优势,并提供以下优点:
- 由于多线程概念而具有更高的性能
- 无平台依赖性
- 便携的
- 由于 Java 字节码,安全可靠。
在 Java 中如何创建一个 Servlet
有多种方法可以创建 servlet 应用程序,例如使用以下任何类或接口:
-
实现
Servlet
接口 -
继承
GenericServlet
类 -
继承
HttpServlet
类
这些是用于创建 servlet 应用程序的一些类和接口。它们包含诸如 doPost()
和 doGet()
之类的方法来处理 HTTP 请求。
servlet 应用程序遵循特定的目录/项目结构,并包含一些必需的步骤,例如:
- 创建一个 servlet
- 创建部署描述符
- 将 servlet 应用程序部署到服务器 (apache tomcat)。
如前所述,要创建 servlet,我们需要扩展 HttpServlet
类并覆盖其方法。在这里,我们使用 doGet()
方法来处理 Get 请求。
下面是一个基本的 servlet 代码。
创建一个小服务程序
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
// Extending HttpServlet class
public class HelloServlet extends HttpServlet {
private String msg;
public void init() throws ServletException {
// Do required initialization
msg = "Hello Servlet";
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// Setting content type for response
response.setContentType("text/html");
// printing msg to browser in h1 heading
PrintWriter out = response.getWriter();
out.println("<h1>" + msg + "</>");
}
public void destroy() {
// code to execute while destroy servlet.
}
}
输出:
此 servlet 代码将向浏览器打印以下消息。
创建部署描述符
这是一个 XML 文件,其中包含有关 servlet 的信息,Web 容器从该文件中获取所有信息。该文件使用了几个标签,例如 <web-app>
、<servlet>
、<servlet-mapping>
等。
它们都用于设置容器的信息。容器使用解析器来提取此信息。
请参阅我们的 HelloServlet 类的 servlet 描述符 (web.xml)。
<web-app>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/helloservlet</url-pattern>
</servlet-mapping>
</web-app>
创建此 XML 文件后,编译 servlet 文件并将整个项目部署到 web 服务器,例如 apache tomcat。这是一个 Web 应用程序,因此它需要一个服务器才能运行。
部署项目后,启动服务器,通过输入浏览器的映射 URL’helloservlet’来访问 servlet。
Servlet 的重要包
Servlet API 包含两个主要的包,它们包含所有的类和接口。
- javax.servlet
- javax.servlet.http
Servlet 类
这些是一些常用的 servlet 类:
-
GenericServlet
-
ServletInputStream
-
ServletOutputStream
-
ServletRequestWrapper
-
ServletResponseWrapper
-
ServletRequestEvent
-
ServletContextEvent
-
HttpServlet
-
Cookie
-
HttpServletRequestWrapper
-
HttpServletResponseWrapper
-
HttpSessionEvent
小服务程序接口
这些是一些常用的 servlet 接口:
-
Servlet
-
ServletRequest
-
ServletResponse
-
RequestDispatcher
-
ServletConfig
-
ServletContext
-
Filter
-
FilterConfig
-
FilterChain
-
ServletRequestListener
-
HttpServletRequest
-
HttpServletResponse
-
HttpSession
-
HttpSessionListener
相关文章
用 Java 创建一个猜数游戏
发布时间:2023/10/10 浏览次数:85 分类:Java
-
任务是为猜谜游戏编写 Java 程序。猜谜游戏是一个约束满足问题。你必须在给定次数的试验中猜出正确的数字;否则,你不会赢。
从 Mac 中卸载 JDK 8
发布时间:2023/10/10 浏览次数:81 分类:Java
-
本文介绍如何从 MacOS 卸载 JDK 8。在过去的几十年里,Java 一直是主要的编程语言之一。它是计算机科学不可或缺的一部分。
Java 中的有限状态机
发布时间:2023/10/10 浏览次数:197 分类:Java
-
本教程演示如何在 Java 中实现有限状态机。有限状态机用于识别模式。本教程演示如何在 Java 中实现有限状态机。
Java 中的位掩码操作
发布时间:2023/10/10 浏览次数:101 分类:Java
-
在 Java 中,位掩码允许我们在一个数值变量中存储多个值。我们将值的每一位都视为一个单独的值,而不是一个整体的单个变量。
Java 中的弱引用类
发布时间:2023/10/10 浏览次数:129 分类:Java
-
本教程演示了 Java 中的弱引用类。弱引用是一种强度不足以使对象保留在内存中的引用。本教程演示了 Java 中弱引用的使用。
用 Java 连接 MySQL 数据库
发布时间:2023/10/10 浏览次数:136 分类:Java
-
这篇文章将演示如何使用 Java 连接 MySQL 数据库。本教程介绍了如何在 Java 中连接 MySQL 数据库。我们还列出了一些示例代码,以便你可以进一步了解该主题。
在 Java 中调用另一个方法中的变量
发布时间:2023/10/10 浏览次数:146 分类:Java
-
本教程解释了如何在 Java 中调用另一个方法中的变量。在本文中,我们将学习如何在 Java 中调用另一个方法中的变量。这取决于变量的类型和它在类内的作用域。
在 Java 中导入自定义类
发布时间:2023/10/10 浏览次数:73 分类:Java
-
这篇文章将要导入 Java 中的自定义类。本文介绍了如何在 Java 中导入自定义类。如果该类存在于同一个包中,则通过创建其对象来使用该类,如果该类存在于另一个包中