今天在公司分享了java web的ppt,把ppt大纲放在这里,希望可以帮助需要的人

servlet容器简介

  • 定义

狭义上的,servlet容器为java Web应用提供运行时环境,负责管理servlet和jsp的生命周期,以及他们的共享数据等

广义上的。绝大部分Servlet容器同时也可以作为web server。

以tomcat为例,狭义上它可以分为连接器和servlet容器,容器只负责servlet逻辑,和用户的网络连接交由连接器处理。

广义上我们可以整个把他称为servlet容器,大家视语境来理解含义

  • 生命周期图:

客户端把请求交给servlet 容器,容器把相关请求封装成httpServletRequest和httpServletReponse,然后交由特定的servlet处理,调用他的service方法。这个是普遍的流程,当然中间也会被filter截断,这在后续会讲到

  • 详细的处理流程(以tomcat为例):

连接器把用户请求数据传给servlet容器,容器从工作线程池中取出一个工作线程。

servlet容器有四个级别的子容器:engine, host, context, servletwapper 每个子容器都有自己对请求的处理过滤逻辑,我们称只为阀(value),一个阀处理完毕,就会处理下一个阀。这些阀组合在一起就像在通过一个管道,我们称只为pipeline,通过完这些内部的阀,我们便可以到我们的web业务项目的控制范围

我们自己的业务项目处理逻辑,系统级别的处理通常会定义在filter里面,这个可以在web.xml里面定义。用户的请求在通过pipeline后,会通过这些filter,filter顺序由filter-mapping在web.xml. filter可以决定是否传给下一个filter,直到servlet。也可以在这个filter就终止传递处理

截取一个servlet的hello world的处理栈信息,大家可以清晰的看到这个过程

  • servlet容器中项目的部署的结构:

部署的形式

1 War文件

通过打成war包

2 解压后的目录

相当于把war解压

部署后的目录结构

根目录存放jsp,html类型的文件

WEB-INF 存放发布描述文件web.xml,这里面记载了listener,filter,servlet的信息,以及用到的servletConfig和servletContext环境变量

WEB-INF/classes 存放应用相关的class文件,也就是我们在项目中写的java业务代码

WEB-INF/lib 存放需要的jar包,也就是项目依赖的第三方jar包

开发的目录结构

Src/main/java

Src/main/resources

这两个对应 WEB_INF/classes里面的文件

Src/test/java

Src/test/restources

这两个对应测试用例,不参与项目的真是部署,但在打包时,比如maven package会运行相应的测试用例

Src/main/webapp

这个对应除上述之外文件,如配置文件和静态文件,jsp等。例如webapp/WEB-INFO/web.xml等

java web分享ppt大纲 -- servlet容器简介的更多相关文章

  1. java web分享ppt大纲 -- servlet包

     概述 servlet相关代码所在包: javax.servlet javax.servlet.http 常用的功能模块 Servlet,filter,listener 常用的相关类: servlet ...

  2. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  3. Java web每天学之Servlet工作原理详情解析

    上篇文章中我们介绍了Servlet的实现方式以及Servlet的生命周期,我们这篇文章就来介绍一下常用对象. 点击回顾:<Java Web每天学之Servlet的工作原理解析>:<J ...

  4. Java Web每天学之Servlet的原理解析

    Java Web每天学之Servlet的工作原理解析,上海尚学堂Java技术文章Java Web系列之二上一篇文章Java Web每天学之Servlet的工作原理解析是之一,欢迎点击阅读. Servl ...

  5. dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器

    # dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...

  6. 【Java Web开发学习】Servlet、Filter、Listener

    [Java Web开发学习]Servlet 转发:https://www.cnblogs.com/yangchongxing/p/9274739.html 1.Servlet package cn.y ...

  7. [原创]java WEB学习笔记44:Filter 简介,模型,创建,工作原理,相关API,过滤器的部署及映射的方式,Demo

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  8. java web 学习五(servlet开发1)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  9. 初学Java Web(3)——第一个Servlet

    这学期 Java Web 课程的第一节课就简短复习了一下 Java 的一些基础知识,所以觉得 Java 的基础知识还是很重要的,但当我想要去写一篇 Java 回顾的文章的时候发现很难,因为坑实在太多了 ...

随机推荐

  1. MYSQL 引擎的情况

    方法 1: show engine innodb status; ------------------------------------------------------------------- ...

  2. Linux 如何打开端口

    举例: 开放10000端口的解决步骤如下: 1.修改/etc/sysconfig/iptables文件,增加如下一行: -A RH-Firewall-1-INPUT -m state --state ...

  3. [C#]Stream.Write Extension Method

    在处理Stream型态时常会使用到Stream.Write这个方法,每次都会有种疑问就是,大多数的处理都是要将Buffer整个写入,為何偏偏每次都要将索引带0,长度带為Buffer的大小呢?另外在处理 ...

  4. IE添加信任站点并设置允许ActiveX控件的VBS脚本

    Set objFSO = CreateObject("Scripting.FileSystemObject") Set WSHShell = CreateObject(" ...

  5. 面向对象程序设计-C++_课时18内联函数

    使用inline说明的函数称内联函数. 在C++中,除具有循环语句.switch语句的函数不能说明为内联函数外,其他函数都可以说明为内联函数. #include <iostream> us ...

  6. &&与||的用法总结

    a() && b() :如果执行a()后返回true,则执行b()并返回b的值:如果执行a()后返回false,则整个表达式返回a()的值,b()不执行: a() || b() :如果 ...

  7. find the mincost route(最小环,最短路,floyd)

    find the mincost route Time Limit: 1000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O ...

  8. Linux下的经常使用性能查询命令top、vmstat、gprof、pidstat之对照

    (1)查看各个CPU核的使用情况 sudo top -d 1 进入之后,按1,会出现以下的CPU使用情况,当中us列反映了各个CPU核的使用情况,百分比大说明该核在进行紧张的任务. (2)查看哪个进程 ...

  9. NAND FLASH

    NAND Flash 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来数据传输.地址 ...

  10. oracle超过最大游标数异常分析(转贴)

    问题描述 Oracle 使用 OPEN_CURSORS 参数指定一个会话一次最多可以打开的游标的数量.超过此数量时,Oracle 将报告 ORA-01000 错误.当此错误传播到 WebLogic S ...