實現Servlet程序的三種方法(小結)

實現Servlet程序的三種方法

1.手動實現Servlet程序

1.編寫一個類去實現Servlet接口
2.實現service方法,處理請求並響應數據

在這裡插入圖片描述

示例代碼:

//HelloServlet.java
package servlet;

import javax.servlet.*;
import java.io.IOException;

public class HelloServlet implements Servlet {
  @Override
  public void init(ServletConfig servletConfig) throws ServletException {

  }

  @Override
  public ServletConfig getServletConfig() {
    return null;
  }
//  service方法專門來處理請求和響應
  @Override
  public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
    System.out.println("Hello,Servlet! 被訪問瞭");
  }

  @Override
  public String getServletInfo() {
    return null;
  }

  @Override
  public void destroy() {

  }
}

3.到web.xml配置Servlet程序的訪問地址

在這裡插入圖片描述

<!--web.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
     version="4.0">
  <!--  servlet標簽給Tomcat配置Servlet程序-->
  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HelloServlet</servlet-class>
  </servlet>

<!--  servlet-mapping標簽給Servlet程序配置訪問地址-->
  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>
</web-app>

2.通過HttpServlet實現Servlet程序

在一般項目開發中一般很少使用Servlet接口來實現Servlet程序,一般都是使用繼承HttpServlet類的方式去實現Serlvet程序

步驟:
1.編寫一個類去繼承HttpServlet類

在這裡插入圖片描述

2.根據需要重寫doGet和doPost方法

在這裡插入圖片描述

3.去web.xml去配置訪問地址

在這裡插入圖片描述

4.最後運行測試就可以接收到值瞭

在這裡插入圖片描述

示例代碼:

//HttpServlet.java
package servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

//繼承HttpServlet
public class HttpServlet02 extends HttpServlet {
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    System.out.println("doGet方法");
  }

  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    System.out.println("doPost方法");
  }
}
```css

```bash

```handlebars

```sql

```javascript
//web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
     version="4.0">
  <!--  servlet標簽給Tomcat配置Servlet程序-->
  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HelloServlet</servlet-class>
  </servlet>

<!--  servlet-mapping標簽給Servlet程序配置訪問地址-->
  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>

  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet02</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HttpServlet02</servlet-class>
  </servlet>

  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet02</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello02</url-pattern>
  </servlet-mapping>
</web-app>

3.通過IDEA自動生成Servlt程序

1.通過IDEA新建一個Servlet

在這裡插入圖片描述

在這裡插入圖片描述

2.之後再新生成的java文件中我們自己按需要配置就好瞭

在這裡插入圖片描述

3.老樣子,依舊是在web.xml中配置好

在這裡插入圖片描述

4.寫個按鈕來檢測配置結果

在這裡插入圖片描述

在這裡插入圖片描述

示例代碼:

//HelloServlet.java
package servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class HelloServlet03 extends HttpServlet {
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    System.out.println("通過IDEA自動/doGet方法");
  }

  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    System.out.println("通過IDEA自動/doGet方法");
  }
}
//web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
     version="4.0">
  <!--  servlet標簽給Tomcat配置Servlet程序-->
  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HelloServlet</servlet-class>
  </servlet>

<!--  servlet-mapping標簽給Servlet程序配置訪問地址-->
  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>

  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet02</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HttpServlet02</servlet-class>
  </servlet>

  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet02</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello02</url-pattern>
  </servlet-mapping>

  <servlet>
    <!--    servlet-name標簽給Serclet程序起一個別名-->
    <servlet-name>HelloServlet03</servlet-name>
    <!--    servlet-class標簽給Serclet程序起一個全類名-->
    <servlet-class>servlet.HelloServlet03</servlet-class>
  </servlet>

  <servlet-mapping>
    <!--    servlet-name標簽告訴服務器我當前配置的地址給那個Servlet程序使用-->
    <servlet-name>HelloServlet03</servlet-name>
    <!--    url-pattern標簽配置訪問地址-->
    <!--    /:斜杠表示在服務器解析的時候,表示地址為Http://ip:port/工程路徑-->
    <!--    /hello:表示地址為Http://ip:port/工程路徑/hello-->
    <url-pattern>/hello03</url-pattern>
  </servlet-mapping>
</web-app>

以上就是實現Servlet程序的三種方法,大傢根據自己的需求去選擇,不一定都要掌握,到此這篇關於實現Servlet程序的三種方法(小結)的文章就介紹到這瞭,更多相關實現Servlet程序內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: