java web分享ppt大纲 -- servlet容器简介
今天在公司分享了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容器简介的更多相关文章
- java web分享ppt大纲 -- servlet包
概述 servlet相关代码所在包: javax.servlet javax.servlet.http 常用的功能模块 Servlet,filter,listener 常用的相关类: servlet ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- Java web每天学之Servlet工作原理详情解析
上篇文章中我们介绍了Servlet的实现方式以及Servlet的生命周期,我们这篇文章就来介绍一下常用对象. 点击回顾:<Java Web每天学之Servlet的工作原理解析>:<J ...
- Java Web每天学之Servlet的原理解析
Java Web每天学之Servlet的工作原理解析,上海尚学堂Java技术文章Java Web系列之二上一篇文章Java Web每天学之Servlet的工作原理解析是之一,欢迎点击阅读. Servl ...
- dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器
# dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...
- 【Java Web开发学习】Servlet、Filter、Listener
[Java Web开发学习]Servlet 转发:https://www.cnblogs.com/yangchongxing/p/9274739.html 1.Servlet package cn.y ...
- [原创]java WEB学习笔记44:Filter 简介,模型,创建,工作原理,相关API,过滤器的部署及映射的方式,Demo
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- java web 学习五(servlet开发1)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- 初学Java Web(3)——第一个Servlet
这学期 Java Web 课程的第一节课就简短复习了一下 Java 的一些基础知识,所以觉得 Java 的基础知识还是很重要的,但当我想要去写一篇 Java 回顾的文章的时候发现很难,因为坑实在太多了 ...
随机推荐
- sql CAST用法
(1).CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型.以下例子用于将文本字符串'12'转换为整型: ' AS int) (2).返回值是整型值12.如果试图将一个代表 ...
- Eclipse Rcp
http://blog.csdn.net/soszou/article/details/7996748
- Apriori算法
APRIORI Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集.而且算法已经被广泛的应用到商业.网络安全等各个领域. Apri ...
- Unix/Linux环境C编程入门教程(6) 安装Fedora C/C++开发环境
安装Fedora C/C++开发环境 1 Fedora 是一个开放的.创新的.前瞻性的操作系统和平台,基于 Linux. 2.选择自定义配置 3.设置版本为10.0 4.选择稍后安装 5.选择64位 ...
- POJ1961Period
POJ1961 #include<iostream> #include<cstdio> #include<cstring> using namespace std; ...
- cdoj 邱老师看电影
//第一次写概率dp //写成记忆化搜索的形式比递推要更方便易懂 //不过好像还是可以写成递推的形式的 但是比较那个…… #include<cstdio> #include<iost ...
- poj1528---(数论)
题意:一个数除了自身以外的所有因数相加,得到的数如果小于自身,输出deficient,否则输出abundant,如果相等,输出perfect 这道题核心:求一个数的所有除本身之外的因数的和 ,i; ; ...
- python-模块系列
--> 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能 ...
- 如何在VMware虚拟机上安装Linux操作系统(Ubuntu)
作为初学者想变为计算机大牛非一朝一夕,但掌握基本的计算机操作和常识却也不是多么难的事情.所以作为一名工科男,为了把握住接近女神的机会,也为了避免当白痴,学会装系统吧!of course为避免把自己的电 ...
- RPC介绍以及编程
1 RPC介绍 RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协 议. RPC采用客 ...