servlet:
     基于java的web组件,用于生成动态内容,由容器管理。
     类似其他java技术组件,由平台无关的java类组成,并且由java web服务器加载执行
 
servlet容器:
     servlet容器也称servlet引擎,作为web服务器或者应用服务器的一部分,
     通过请求和相应对话,提供web客户端与servlets的交互的能力,容器管理servlets实例以及它们的生命周期
 
核心接口:3.0及以后一般使用注解或api代替以前的web.xml进行启动
servlet3.0前时代
     服务组件
          javax.servlet.Servlet
          javax.servlet.Filter
     上下文组件
          javax.servlet.ServletContext
          javax.servlet.http.HttpSession
          javax.servlet.http.HttpServletRequest
          javax.servlet.http.HttpServletResponse
          javax.servlet.http.Cookie
     配置
          javax.servlet.ServletConfig
          javax.servlet.FilterConfig
     输入输出
          javax.servlet.ServletInputStream
          javax.servlet.ServletOutputStream
     异常
          javax.servlet.ServletException
          javax.servlet.IOException
     事件(since Servlet2.3)
          生命周期类型
               javax.servlet.ServletContextEvent
               javax.servlet.http.HttpSessionEvent
               javax.servlet.ServletRequestEvent
          属性上下文类型
               javax.servlet.ServletContextAttributeEvent
               javax.servlet.http.HttpSessionBindingEvent
               javax.servlet.ServletRequestAttributeEvent
     监听器
          生命周期类型
               javax.servlet.ServletContextListener
               javax.servlet.http.HttpSessionListener
               javax.servlet.http.HttpSessionActivationListener
               javax.servlet.ServletRequestListener
          属性上下文类型
               javax.servlet.ServletContextAttributeListener
               javax.servlet.http.HttpSessionAttributeListener
               javax.servlet.http.HttpSessionBindingListener
               javax.servlet.ServletRequestAttributeListener
 
servlet3.0后时代
     组件申明注解
          @Javax.servlet.annotation.WebServlet
          @javax.servlet.annotation.WebFilter
          @javax.servlet.annotation.WebListener
          @javax.servlet.annotation.ServletSercurity
          @javax.servlet.annotation.HttpMethodConstraint
          @javax.servlet.annotation.HttpConstraint
     配置申明
          @javax.servlet.annotation.WebInitParam
     上下文
          javax.servlet.AsyncContext
      事件
          javax.servlet.AsyncEvent
      监听
          javax.servlet.AsyncListener
      Servlet组件注册
          javax.servlet.ServletContext#addServlet()
          javax.servlet.ServletRegistration (响应对象)
      Filter组件注册
          javax.servlet.FilterContext#addFilter()
          javax.servlet.FilterRegistration (响应对象)
     监听器注册
          javax.servlet.ListenerContext#addListener() 无返回对象
          javax.servlet.AsyncListener
     自动装配
          初始器
               javax.servlet.SErvletContainerInitializer
          类型过滤
               @javax.servlet.annotation.HandlesTypes
servlet生命周期
     初始化
          容器第一次执行时,Servlet#init(servletconfig)方法被执行
     处理请求
          HTTP请求到达容器,Servlet#service处理请求
     销毁
          容器关闭,调用Servlet#destroy()方法
 
Filter生命周期
     初始化
          容器启动时执行Filter#init(FilterConfig)方法
     处理请求
          HTTP请求到达容器
          Filter#doFilter方法被执行,在Servlet#servic方法之前被执行
     销毁
          容器关闭时执行Filter#destory()方法
 
 
Servlet on Srping Boot
 
     Servlet组件扫描
 
     @org.springframework.boot.web.servlet.ServletComponentScan
          制定包路径扫描
          指定类路径扫描
 
     注解方式注册
          servlet
               1.扩展javax.servlet.Servlet
                    javax.servlet.http.HttpServlet
                    org.springframework.web.servlet.FrameworkServlet
               2.标记@javax.servlet.WebServlet
          Filter
               1 实现javax.servlet.Filter
                    org.springframework.web.filter.OncePerRequestFilter
               2 标记@javax.servlet.annotation.WebFilter
 
          监听器
               1 实现javax.servlet.ServletRequestListener
               2 标记@java.servlet.annotation.WebListener
 
     
     Spring Boot Api方式注册
          servlet
               1.实现 javax.servlet.Servlet
                    javax.servlet.http.HttpServlet
                    org.springframework.web.servlet.FrameworkServlet
               2. 组装Servlet
                    spring boot 1.4.0开始支持
                         org.springframework.boot.web.servlet.ServletRegistrationBean
                    spring boot 1.4.0之前
                         org.springframework.boot.context.embedded.ServletREgistatoinBean
               3 暴露Spring Bean
                    @Bean
          Filter
               1 实现javax.servlet.Filter
                    javax.servlet.http.HttpFilter
                    org.springframework.web.filter.OncePerRequestFilter
               2 组装Servlet
                    spring boot 1.4.0开始支持
                         org.springframework.boot.web.servlet.FilterRegistrationBean
                    spring boot 1.4.0之前
                         org.springframework.boot.context.embedded.FilterREgistatoinBean
               3 暴露Spring Bean
                    @Bean
          
 
 
   
 
 
 
 
 
 
 
 
 
 
 

spring boot 与servlet的更多相关文章

  1. spring boot整合servlet、filter、Listener等组件方式

    创建一个maven项目,然后此项目继承一个父项目:org.springframework.boot 1.创建一个maven项目: 2.点击next后配置父项目及版本号 3.点击finish后就可查看p ...

  2. Spring Boot 集成servlet,发布为可直接运行的war包,方便后续打包为docker镜像。

    背景:Spring Boot 集成servlet,发布为可直接运行的war包,方便后续打包为docker镜像. 原文地址 https://github.com/weibaohui/springboot ...

  3. Spring Boot 注册 Servlet 的三种方法,真是太有用了!

    本文栈长教你如何在 Spring Boot 注册 Servlet.Filter.Listener. 你所需具备的基础 什么是 Spring Boot? Spring Boot 核心配置文件详解 Spr ...

  4. Spring Boot整合Servlet,Filter,Listener,访问静态资源

    目录 Spring Boot整合Servlet(两种方式) 第一种方式(通过注解扫描方式完成Servlet组件的注册): 第二种方式(通过方法完成Servlet组件的注册) Springboot整合F ...

  5. spring boot(18)-servlet、filter、listener

    servlet.filter.listener的用法就不讲了,只讲如何在spring boot中配置它们.有两种方式,一种是从servlet3开始提供的注解方式,另一种是spring的注入方式 ser ...

  6. Spring Boot使用Servlet、Filter或Listener的方式

    根据官方文档说明,有两种方式可以在你的Spring Boot应用中使用Servlet.Filter或Listener. 其一:将Servlet.Filter或Listener注册成Spring Bea ...

  7. Spring Boot的Servlet简单使用

    当使用spring-Boot时,嵌入式Servlet容器通过扫描注解的方式注册Servlet.Filter和Servlet规范的所有监听器(如HttpSessionListener监听器). Spri ...

  8. Spring Boot 整合Servlet

    冷知识,几乎用不到 在spring boot中使用Servlet有两种实现方法: 方法一: 正常创建servlet,然后只用注解@ServletComponentScan package clc.us ...

  9. Spring Boot (19) servlet、filter、listener

    servlet.filter.listener,在spring boot中配置方式有两种:一种是以servlet3开始提供的注解方式,另一种是spring的注入方式. servlet注解方式 serv ...

随机推荐

  1. Java递归:一个NB自慰的操作

    递归的核心思想:自身调用自身 示例一:求5的阶乘 常规方法: 使用while循环 1 public class Demo01 { 2 3 public static void main(String[ ...

  2. MS+Oracle各种兼容性的坑

    自17年开始新产品开始全面支持Oracle 12c,但陆续发现各种环境问题兼容性的坑,在此汇总一下: 使用11.2.0.1的客户端版本,在连接12c时,发现system账号登陆报用户名密码错误,普通的 ...

  3. 【转】计算机信息系统安全保护等级划分准则(GB 17859-1999)

    计算机信息系统安全保护等级划分准则(GB 17859-1999) 概述 计算机信息系统安全保护等级划分准则(GB 17859-1999) 1 范围 本标准规定了计算机系统安全保护能力的五个等级,即: ...

  4. MAC基本操作

    1:软件的安装,卸载和破解 (1)mac上的软件包的安装可以去appstore或者是去第三方网站下载,下载下来的安装包一般是dmp,pkg,iso文件.最终安装之后生成的文件是app文件就可以使用.通 ...

  5. verilog中24LC04B iic(i2c)读写通信设计步骤,以及程序常见写法错误。

    板子使用的是黑金的是xilinx spartan-6开发板,首先准备一份24LC04B芯片资料,读懂资料后列出关键参数. 如下: 1.空闲状态为SDA和SCL都为高电平 2.开始状态为:保持SCL,S ...

  6. window7 修改docker安装的machine 位置

    win7下安装docker ,默认的machine location 是在C:\users\xx\.docker\machine\machines 下面,为了不占用系统盘,想修改盘符位置 google ...

  7. Windows7环境下Excel2010中图片超链接默认打开程序修改

    在Windows7的环境下,打开Excel2010超链接图片,都是默认用IE打开.搜索了所有的中文网络,没有找到解决方案,且发现受此困扰的人不少.后来用纯英文搜索,终于找到解决方案并尝试成功. 1,操 ...

  8. 清空Sql server日志

    日志文件时间长了很大很讨厌,这样清空 1.分离数据库 2.将原数据库的log文件改名 3.附加数据库,在log文件中会显示没有发现,点击删除按钮 4.确定即可

  9. js通过replace()方法配合正则去除空格

    <script> //去掉全部空格 var str = " 546546 4564 46 46 88 88 "; var str = str.replace(/\s+/ ...

  10. 利用redis 漏洞入侵挖矿临时解决办法

    top 看到一个bashd的进程占据了cpu ps aux |grep bashd cd /tmp 发现ddg.2011 的文件.root dump.rdb 在/root/.ssh  也有奇怪的文件 ...