当前位置 : 主页 > 编程语言 > java >

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

来源:互联网 收集:自由互联 发布时间:2021-04-03
实现Servlet程序的三种方法 1.手动实现Servlet程序 1.编写一个类去实现Servlet接口 2.实现service方法,处理请求并响应数据 示例代码: //HelloServlet.javapackage servlet;import javax.servlet.*;import java

实现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程序内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

网友评论