Servlet基本使用

目录

一、Servlet概述

二、Servlet的关系

三、Servlet的实现

四、Servlet的生命周期

一、Servlet概述

Servlet是Java语言运行在服务器上的程序,简单的可以说就是一个接口或者是接口。主要作用是处理http请求,并返回一个响应。

体系结构

主要的方法

Modifier and Type

Method and Description

void

destroy() 

Servlet容器调用,以指示伺服容器正在停止使用。

ServletConfig

getServletConfig() 

返回一个Servlet配置对象,其中包含此Servlet的初始化和启动参数。

String

getServletInfo() 

返回有关servlet的信息,如作者、版本和版权。

void

init(ServletConfig config) 

由Servlet容器调用,以指示伺服容器正在投入使用。

void

service(ServletRequest req, ServletResponse res) 

由Servlet容器调用,以允许Servlet响应请求。由Servlet容器调用,以允许Servlet响应请求。

二、Servlet的关系

 

三、Servlet的实现

1.首先,创建一个新的项目

 2.编写一个类区实现Servlet接口

package com.training;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
public class HelloServlet implements Servlet {
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
    }
    @Override
    public ServletConfig getServletConfig() {
        return null;
    }
    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("实现了");
    }
    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}

3.实现service方法,处理请求,并响应数据,到web.xml中去配置servlet程序的访问地址

<?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程序-->
    <servlet>
<!--        servlet name标签是Servlet程序的一个别名-->
<!--        servklet class标签是Servlet程序的全类名-->
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>com.training.HelloServlet</servlet-class>
    </servlet>
<!--    给配置Servlet程序访问地址-->
    <servlet-mapping>
<!--        告诉服务器,当前配置的地址给哪个Servlet程序用的-->
        <servlet-name>HelloServlet</servlet-name>
<!--        配置访问地址-->
<!--        / : 在服务器解析的时候,表示地址为http://ip:port/工程路径
            /hello: 表示为: http://ip:port/工程路径/hello
-->
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
</web-app>

4.运行访问(localhost:8080/WebServlet/hello),结果如下:

四、Servlet的生命周期

代码实现:

package com.training;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
public class HelloServlet implements Servlet {
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("init");
    }
    @Override
    public ServletConfig getServletConfig() {
        return null;
    }
    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        HttpServletRequest httpServlet=(HttpServletRequest) servletRequest;
        System.out.println("service");
        String method = httpServlet.getMethod();
        if("GET".equals(method)){
            System.out.println("get执行了");
        }
        if("POST".equals(method)){
            System.out.println("Post执行了");
        }

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

    @Override
    public void destroy() {
        System.out.println("destroy");
    }
}

运行服务器

总结的来说,

Servlet生命周期分为三个阶段,初始化阶段 ,先检查服务器有没有Servlet对象,然后调用initi方法,进行初始化,并且生命周期内只调用一次;运行阶段,调用service方法,对Servlet的每一次请求做出响应,可以多次调用;销毁阶段,调用destroy方法,释放Servlet对象的内存,Servlet对象一旦创建,会等待访问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值