Java 中的 Servlet 可以用多种方式描述。作为一种技术,Servlet 用于创建网页;作为 API,提供接口等。它用于扩展在请求-响应编程模型上托管应用程序的服务器的功能。 Servlet 提供基于组件和独立于平台的方法来构建基于 Web 的应用程序,而没有任何性能限制。 Java 中的 Servlet 可以通过 Java API 和 JDBC 完全访问企业数据库。我们将详细了解这些 Servlet 是什么、为什么使用它们、它的优点和局限性,以及 Servlet 在 Java 中实际如何工作。
广告 该类别中的热门课程 JAVA SERVLET - 专业化 | 18 门课程系列 | 6 次模拟测试开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
Servlet 可以用许多其他方式来描述,
随着技术的不断发展,我们需要每天熟悉最新的更新或最新的技术堆栈。 Servlet 充当接口、技术、Web 组件、类或 API。 借助 servlet,我们可以通过网页/表单、数据库以及任何其他数据源收集用户信息并创建网页。
Java 中的 Servlet 检查通信接口、客户端和服务器的要求、使用的协议、编程语言以及涉及的软件。 Servlet 按以下步骤执行,
第 1 步: 客户端向 Web 服务器发送请求,读取客户端发送的显式数据,这些数据可以是 HTML 表单、小程序或自定义 HTTP 客户端程序。
第 2 步: Web 服务器接收请求。
第3步:Web服务器将请求传递给相应的servlet,处理请求可能包括与数据库通信、调用Web服务或直接响应。
第 4 步: Servlet 然后处理请求并以输出的形式生成响应。它可以是任何格式,HTML 或 XML、GIF(如果是图像)或 Excel。
第 5 步: 然后这些 servlet 将响应发送回服务器
第 6 步: 然后 Web 服务器将响应发送回客户端和客户端,如浏览器显示在 UI 上一样。
上面的 servlet 架构使用了一些 Java 方法,例如:
首先,我们需要安装Java、Eclipse和Tomcat:
1.我们将使用 File-> 创建一个动态 Web 项目。新->动态网络项目。
2.输入Project Name并选择Target Runtime,点击Next,需要勾选“Generate web.xml”然后Finish
3.项目结构如下所示。
4.然后,点击文件->创建新的 Servlet。
5.单击上面的“完成”。现在 Eclipse 将根据前面步骤中完成的输入或配置生成 Servlet 类。
代码:
FirstProgram.java
package com.srccode.example; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class FirstProgram */ @WebServlet("/FirstProgram") public class FirstProgram extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public FirstProgram() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.getWriter().append("Served at: ").append(request.getContextPath()); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
我们将修改 Servlet 类的代码如下,
包 com.srccode.example;
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; /** * Servlet implementation class FirstProgram */ @WebServlet("/FirstProgram") public class FirstProgram extends HttpServlet { private static final long <em>serialVersionUID</em> = 1L; /** * @see HttpServlet#HttpServlet() */ public FirstProgram() { super(); // TODO Auto-generated constructor stub } private String mymsg; public void init() throws ServletException { mymsg = "Hi eduCBA Team! We are working on Java Servlet Tutorial! This is the first Servlet Program!"; } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.setContentType("text/html"); PrintWriter printWriter = response.getWriter(); printWriter.println("<h1>" + mymsg + "</h1>"); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
在 web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> <display-name>ServletExample</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
在index.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>BeginnersBook Servlet Demo</title> </head> <body> <a href="welcome">Click to call Servlet</a> </body> </html>
输出:
右键,点击项目并选择运行方式->在服务器上运行。
现在打开浏览器,我们可以看到以下输出,服务器将在本地主机上运行:
http://localhost:8080/ServletExample/FirstProgram
Java中的Servlet有很多优点。 Servlet 可以看作是运行在服务器端的小程序:
至此,我们结束了“Java Servlet”主题。我们已经通过示例了解了 Java 中的 Servlet 是什么以及如何使用它们。我们也看到了它的优点,并通过Servlet架构和使用的Servlet方法一步步了解了Servlet是如何使用的。还看到了为什么在 Java 中使用 Servlet 以及它相对于 CGI 的优点。关于 Servlet,我们还有很多值得探索的地方,还有多种类型的 Servlet 可供使用,我们将在进一步的教程中进行更深入的研究。
以上是Java 中的 Servlet的详细内容。更多信息请关注PHP中文网其他相关文章!