java web Servlet开门-入门-出门(四)

本文详细介绍了Servlet的入门知识,包括Servlet的概念、架构、包结构、创建方法及生命周期。此外,还深入讲解了Servlet的高级应用,如虚拟路径映射、ServletConfig和ServletContext的使用,特别是如何实现Servlet对象的数据共享和读取Web应用资源文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言:

学习目标:

一、Servlet开发入门(基础)

1、什么是Servlet(理解)

2、Servlet 架构

 3、Servlet包

4、创建servlet

 5、Servlet 生命周期

二、Servlet高级应用(重点)

1、Servlet虚拟路径的映射

1、Servlet的多重映射

2、Servlet映射路径中使用通配符

3、缺省Servlet

三、ServletConfig和ServletContext(难点)

1、ServletConfig接口

 2、ServletConfig接口

(1)获取Web应用程序的初始化参数

 (2)实现多个Servlet对象共享数据

(3)读取Web应用下的资源文件


前言:

学习目标:

重点难点:

1、掌握ServletHttpServlet的使用、ServletConfigServletContext对象的使用

2、熟悉使用Eclipse开发Servlet程序

3、了解Servlet虚拟路径的映射

一、Servlet开发入门(基础)

1、什么是Servlet(理解

参考学习网站:Servlet 简介 | 菜鸟教程 (runoob.com)

Servlet(Server Applet)是java Servlet的简称,称为小服务程序服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态web内容。Servlet运行于支持Java的应用服务器中。

其中最重要的是javax.servlet.Servlet接口。简而言之,Servlet就是一种实现了Servlet接口的类,它是由web容器负责创建并调用,用于接收和响应用户的请求。

2、Servlet 架构

 3、Servlet包

javax.servletjavax.servlet.http包表示servlet api的接口和类

包名 含义
javax.servlet 包含servlet或Web容器使用的许多接口和类,这些接口不是特定于任何协议。
javax.servlet.http 包含仅用于负责http请求的接口和类。

javax.servlet包中有许多接口:

Servlet接口主要有五个抽象方法

其中以下三个为Servlet的生命周期

  • Servlet 初始化后调用 init () 方法。
  • Servlet 调用 service() 方法来处理客户端的请求。
  • Servlet 销毁前调用 destroy() 方法。
import javax.servlet.*;
import java.io.IOException;
/**
 * @Description: 测试servlet$
 * @Author: dyq
 * @Date: 2022.03.10$
 */
public class servlet implements Servlet {
    @Override
    public void init(ServletConfig config) throws ServletException {
//        负责servlet初始化工作,容器建好servlet对象后,就会调用此方法
    }

    @Override
    public ServletConfig getServletConfig() {
//        返回容器调用init(ServletConfig config)方法时传递给servlet的ServletConfig对象
        return null;
    }

    @Override
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
//负责响应用户的请求,当容器接收到客户端访问servlet对象请求时,就会调用此方法,
    }

    @Override
    public String getServletInfo() {
//        返回一个字符串,其中包含了关于servlet的信息,例如作者,版本和版权等信息
        return null;
    }

    @Override
    public void destroy() {
//    负责释放servlet对象占用的资源,当servlet对象被销毁时,容器会调用此方法
    }
}

4、创建servlet

创建servlet有三种不同的方法。

  1. 通过实现Servlet接口
  2. 扩展GenericServlet
  3. 通过扩展HttpServlet
     

例如:1、通过实现servlet接口实现

package entry;

import java.io.IOException;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;



public class helloserver implements Servlet {

	@Override
	public void init(ServletConfig arg0) throws ServletException {
		System.out.println("servlet正在初始化!");
	}
	
	@Override
	public ServletConfig getServletConfig() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public String getServletInfo() {
		// TODO Auto-generated method stub
		return null;
	}
	@Override
	public void service(ServletRequest arg0, ServletResponse arg1)
			throws ServletException, IOException {
		//专门向客服端提供响应的方法
        System.out.println("Servlet正在提供服务");
	}
	@Override
	public void destroy() {
		System.out.println("servlet销毁");
		
	}

}

启动tomcat 

2、扩展GenericServlet

web.xml中配置映射关系

web.xml 文件中,一个 < servlert -mapping> 元素用于映射一个 Servlet 的对外访问路径,该路径也称为 虚拟路径
<?xml version=&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北街风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值