Servlet

servlet简介

  • 什么是servlet:

    • servlet是运行在服务端的java小程序,是sun公司提供的一套规范(接口),用来处理客户端请求,响应给浏览器的动态资源。但servlet的实质就是java代码,通过java的API向客户端动态的servlet是运行在服务端的java小程序,是sun公司提供的一套规范(接口),用来处理客户端请求,响应给浏览器的动态资源。但servlet的实质就是java代码,通过java的API向客户端动态的
    • servlet规范:包含三个技术点
      servlet技术、filter技术(过滤器)、listener技术(监听器)
  • servlet快速入门

    • 实现步骤1:
      创建类实现servlet接口
      覆盖尚未实现的方法 service()
      在web.xml进行servlet配置

    但在实际开发中,我们不会直接实现servlet的方法,因为那样实现的方法太多,我们一般创建类继承HttpServlet

    • 实现步骤二:
      创建类继承HttpServlet
      覆盖doGet(),doPost()方法
      在web.xml中进行servlet配置
    • 访问过程
      在这里插入图片描述

servletAPI(生命周期)

  • Servlet接口中的方法
    • init(ServletConfig Config)
      何时执行:Servlet创建的时候执行
      ServletConfig:代表的是改Servlet对象的配置信息
    • service(ServletRequest request,ServletResponse response)
      何时执行:每次请求都会执行
      ServletRequest:代表请求,认为ServletRequest内部封装的是http请求的信息
      ServletResponse:代表响应,认为封装的是响应信息
    • destroy()
      何时执行:servlet销毁时执行
  • HttpServlet类的方法
    • init()
    • doGet(HttpServletRequest request,HttpServletResponse response)
    • doPost(HttpServletRequest request,HttpServletResponse response)
    • destory()
  • Servlet生命周期(面试题)
    • Servlet何时创建:默认第一次访问该Servlet时创建该对象
    • Servlet何时销毁:服务器关闭Servlet销毁
    • 每次访问必然执行的方法:
      service(ServletRequest request,ServletResponse response)

servlet配置

  • 基本配置
    在这里插入图片描述
    url-pattern的配置方式
    - 完全匹配访问的资源与配置的资源完全相同才能访问的
    在这里插入图片描述
    - 目录匹配 格式:/虚拟的目录…/* , 代表任意
    在这里插入图片描述
    - 扩展名匹配 格式:
    .扩展名
    在这里插入图片描述
    注意:第二种与第三种不能混用/aaa/bbb/*.abcd(错误的)
  • 服务器启动实例化Servlet
    Servlet何时创建:默认第一次访问时创建,
    在配置servlet时加上servlet在启动服务器时就创建
  • 缺省Servlet
    • 可以将url-pattern配置一个/,代表该Servlet是一个缺省的Servlet
    • 什么是缺省的Servlet?
      当你访问资源地址所有的servlet都不匹配时,缺省的Servlet负责处理,其实web资源中所有的响应都是Servlet负责,包括静态资源
  • 欢迎页面
    在这里插入图片描述

ServletContext对象

  • 什么是ServletContext对象

    • ServletContext对象代表一个web应用环境(上下文)对象,ServletContext对象内部封装的是该web应用的信息,ServletContext对象一个web应用只有一个
    • 一个web应用有几个servlet对象?多个
    • ServletContext对象的生命周期?
      创建:该web应用被加载(服务器启动或发布web应用)
      销毁:web应用被卸载(服务器关闭,移除该web应用)
  • 怎样获得ServletContext对象
    ServletContext servletContext=config.getServletContext();
    servletContext servletContext=this.getServletContext();

  • ServletContext对象的作用

    • 获得web应用全局的初始化参数
      在web.xml中配置全局参数
      在这里插入图片描述
      通过context对象获得参数
      在这里插入图片描述
    • 获得web应用中任何资源的绝对路径
      方法: String path=context.getRealPatn(相对于该web应用的相对地址);
    • ServletContext是一个域对象
      什么是域对象?存储数据的区域就是域对象
      ServletContext的作用范围:整个web应用(所有的web资源都可以向ServletContext域对象中存取数据,数据可以共享)
    • 与对象的通用方法:
      setAttribute(String name,Object obj);
      getAttribute(String name);
      removeAttribute(String name);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值