實現(xiàn)Servlet程序的三種方法(小結)
實現(xiàn)Servlet程序的三種方法
1.手動實現(xiàn)Servlet程序
1.編寫一個類去實現(xiàn)Servlet接口
2.實現(xiàn)service方法,處理請求并響應數(shù)據(jù)

示例代碼:
//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實現(xiàn)Servlet程序
在一般項目開發(fā)中一般很少使用Servlet接口來實現(xiàn)Servlet程序,一般都是使用繼承HttpServlet類的方式去實現(xiàn)Serlvet程序
步驟:
1.編寫一個類去繼承HttpServlet類

2.根據(jù)需要重寫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>
以上就是實現(xiàn)Servlet程序的三種方法,大家根據(jù)自己的需求去選擇,不一定都要掌握,到此這篇關于實現(xiàn)Servlet程序的三種方法(小結)的文章就介紹到這了,更多相關實現(xiàn)Servlet程序內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
聊聊@value注解和@ConfigurationProperties注解的使用
這篇文章主要介紹了@value注解和@ConfigurationProperties注解的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09
Java實現(xiàn)二分查找BinarySearch算法
這篇文章主要介紹了Java實現(xiàn)二分查找BinarySearch算法,二分查找針對的是一個有序的數(shù)據(jù)集合,每次都通過跟區(qū)間的中間元素對比,將待查找的區(qū)間縮小為之前的一半,直到找到要查找的元素,或者區(qū)間被縮小為 0,需要的朋友可以參考下2023-12-12
SpringBoot3集成SLF4J+logback進行日志記錄的實現(xiàn)
本文主要介紹了SpringBoot3集成SLF4J+logback進行日志記錄的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01
java使用wait()和notify()線程間通訊的實現(xiàn)
Java 線程通信是將多個獨立的線程個體進行關聯(lián)處理,使得線程與線程之間能進行相互通信,本文就介紹了java使用wait()和notify()線程間通訊的實現(xiàn),感興趣的可以了解一下2023-09-09
Java class文件格式之特殊字符串_動力節(jié)點Java學院整理
特殊字符串出現(xiàn)在class文件中的常量池中,本著循序漸進和減少跨度的原則, 首先把class文件中的特殊字符串做一個詳細的介紹, 然后再回過頭來繼續(xù)講解常量池,對java class 文件格式相關知識感興趣的的朋友一起學習吧2017-06-06
SpringBoot 改造成https訪問的實現(xiàn)
這篇文章主要介紹了SpringBoot 改造成https訪問的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10
SpringBoot使用Filters實現(xiàn)請求過濾和預處理
過濾器(Filter)是一種在Web應用中用于攔截和處理HTTP請求和響應的對象,在Java Web開發(fā)中,過濾器是實現(xiàn)特定功能,如認證、日志記錄和字符編碼處理的重要工具,本文主要介紹了SpringBoot使用Filters實現(xiàn)請求過濾和預處理,需要的朋友可以參考下2024-08-08

