实现Servlet程序的三种方法(小结)

 更新时间:2021年01月12日 11:05:45   作者:A_Hua、  
这篇文章主要介绍了实现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程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot mail中文附件乱码的解决方法

    SpringBoot mail中文附件乱码的解决方法

    本篇文章主要介绍了SpringBoot mail中文附件乱码的解决方法,非常具有实用价值,需要的朋友可以参考下
    2017-09-09
  • Java设计模式以虹猫蓝兔的故事讲解代理模式

    Java设计模式以虹猫蓝兔的故事讲解代理模式

    代理模式是Java常见的设计模式之一。所谓代理模式是指客户端并不直接调用实际的对象,而是通过调用代理,来间接的调用实际的对象
    2022-04-04
  • Springboot maven项目配置文件覆盖问题的处理

    Springboot maven项目配置文件覆盖问题的处理

    这篇文章主要介绍了Springboot maven项目配置文件覆盖问题的处理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • SpringSecurity实现访问控制url匹配

    SpringSecurity实现访问控制url匹配

    本文主要介绍了SpringSecurity实现访问控制url匹配,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • java kafka写入数据到HDFS问题

    java kafka写入数据到HDFS问题

    这篇文章主要介绍了java kafka写入数据到HDFS问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Java线程安全基础概念解析

    Java线程安全基础概念解析

    这篇文章主要介绍了Java线程安全基础概念解析,希望给大家一个参考,需要的朋友可以了解下。
    2017-09-09
  • Java大数据开发Hadoop MapReduce

    Java大数据开发Hadoop MapReduce

    MapReduce的思想核心是“分而治之”,适用于大量复杂的任务处理场景(大规模数据处理场景)Map负责“分”,即把复杂的任务分解为若干个“简单的任务”来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系
    2023-03-03
  • Java getParameter()获取数据为空的问题

    Java getParameter()获取数据为空的问题

    这篇文章主要介绍了Java getParameter()获取数据为空的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • java 转发和重定向区别及实例代码

    java 转发和重定向区别及实例代码

    这篇文章主要介绍了java 转发和重定向区别及实例代码的相关资料,需要的朋友可以参考下
    2016-11-11
  • Jmeter3.0发布!版本更新到底更新了什么

    Jmeter3.0发布!版本更新到底更新了什么

    Jmeter3.0发布!版本更新到底更新了什么?这篇文章主要告诉大家Jmeter3.0版本更新了什么,感兴趣的小伙伴们可以参考一下
    2016-08-08

最新评论