itan:ServletContext简介
先介绍一些相关的知识点
Web服务器是提供web服务的软件或主机,即Web服务器软件或装有Web服务器软件的计算机。例如:IIS、apache、nginx等。Web服务器可以处理 HTTP 协议,响应针对静态页面或图片的请求,进行页面跳转,或者把动态请求委托其它程序(它的扩展、某种语言的解释引擎(php)、Web容器)。
所以,我们可以把 IIS、Apache、Nginx、Tomcat等都称为Web服务器,因为他们都提供了web服务。
中间件(Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通。中间件处在操作系统和更高一级应用程序之间。他充当的功能是:将应用程序运行环境与操作系统隔离,从而实现应用程序开发者不必为更多系统问题忧虑,而直接关注该应用程序在解决问题上的能力 。容器就是中间件的一种。所以说我们可以把Tomcat、Weblogic、Jboss等叫做Web中间件。
容器是中间件的一种,作为操作系统和应用程序之间的桥梁,给处于其中的应用程序组件提供一个环境,使应用程序直接跟容器中的环境变量交互,而不必关注其它系统问题。例如:tomcat(servlet容器),Jboss(EJB容器)。这些容器提供的接口严格遵守J2EE规范中的web application 标准。
servlet的生命周期就是从servlet出现到销毁的全过程。主要分为以下几个阶段:
加载类—>实例化(为对象分配空间)—>初始化(为对象的属性赋值)—>请求处理(服务阶段)—>销毁
服务器启动时(web.xml中配置load-on-startup=1,默认为0)或者第一次请求该servlet时,就会初始化一个Servlet对象,也就是会执行初始化方法init(ServletConfig conf),该servlet对象去处理所有客户端请求,service(ServletRequest req,ServletResponse res)方法中执行,最后服务器关闭时,才会销毁这个servlet对象,执行destroy()方法。
开发过程步骤:
先编写servlet程序,然后去web.xml中配置servlet注册信息,即其名字和对应的servlet程序代码,然后在编写映射路径,即其名字和对应的访问路径。向web服务器注册。
servletContext
servlet应用程序之间相互独立执行
servletContext(上下文)可能是面试题。是在web容器(tomcat)启动的时候,会为每个web程序创建一个对应的ServletContext对象,代表当前web应用工程(包含多个servlet程序),全局唯一,凌驾于所有servlet程序之上,可以用它对web应用进行一些操作。
共享数据(后面会用session或者request代替他),在这个servlet中向servletContext中保存的数据可以在另一个servlet中拿到。例:淘宝登录之后跳转不同的界面都携带自己的登录信息。也可以使用io输出到文件中,但是不方便,浪费资源。
获取初始化参数(几乎不用),getinitparam
请求转发功能实现(后面会用request去做)。
/*向容器的context对象发出请求,要从指定的请求路径,即某个servlet程序获取数据。
*context作为中间商获取到此数据之后会由它转发到当前程序,当前程序接触不到指定的
servlet程序。当前页面路径不变,能够显示指定请求数据,状态码为200,即正常访问.
而重定向则是中间商告诉你去找目标程序,状态码为3
*/
// 指定请求数据的目标转发路径
// RequestDispatcher getp = context.getRequestDispatcher(“getp”);
// 调用forward实现请求转发
// getp.forward(req,resp);
context.getRequestDispatcher("/getp").forward(req,resp);读取资源文件(后面用类加载classload,反射去做)
Properties
- 在java目录下新建properties文件
- 在resources目录下新建properties文件
都会在项目build时被打包到同一个路径下:classes,俗称这个路径为classpath类路径。
可以通过getResourcesAsStream获取到流形式的properties配置信息,然后再用一个空白的properties文件load装载这个流,再通过这个新文件去获取信息。
itan:ServletContext简介相关推荐
- ServletContext的学习笔记(属Servlet学习课程)
文章目录 ServletContext 简介 获取 ServletContext 对象 功能 获取 MIME 类型 用来共享数据 获取文件在服务器主机的物理路径 获取全局级别的初始化参数 获取临时目录 ...
- JavaWeb_基础知识
学习目录 零.互联网通信流程 (一).设计技术[偏过时] (二).实质 (三).角色划分 (四).互联网通信模型 1. C/S通信模型: C:client software:客户端软件 S:serve ...
- Java开发之ServLet详解
一.什么是ServLet? serverLet是javaEE中运行于服务器端的,用于接收和响应HTTP协议的请求的程序. 二.ServLet的三种实现方式 1.实现ServLet接口 步骤: (1)实 ...
- itan:cookie-session简介
1.会话 用户打开一个浏览器,点击很多超链接,访问多个web资源,关闭浏览器的过程称为会话. 有状态会话:一个同学来过教室,下次再来,我们知道这个同学曾经来过,称之为有状态会话.例如直播网站等会记住你 ...
- itan:request-response简介
输出汉字用getwriter(),否则会乱码:其余的用getOutputStream(),否则会漏掉字符,字符串损坏或丢失. Web服务器接收到客户端的http请求,针对此请求,分别创建代表请求的Ht ...
- Servlet简介与Servlet和HttpServlet运行的流程
2019独角兽企业重金招聘Python工程师标准>>> 1.Servlet [1] Servlet简介 > Server + let > 意为:运行在服务器端的小程序. ...
- Java Servlet 技术简介
开始之前 关于本教程 在您最喜欢的 Web 浏览器中,您所阅读的页面是如何出现的呢?当登录到您最喜欢的 Web 站点时,该 Web 站点如何知道登录的用户是您?而 Web 零售商又如何接受您的在线订购 ...
- Spring-Security 简介、入门案例详解、安全框架、权限验证 SSM项目 使用 JavaConfig配置
Spring-Security 简介 一.介绍 二.详细步骤 1.创建一个maven项目 添加web 框架. 2.导入依赖 3.项目整体结构 4.Spring 容器配置 5.servletContex ...
- JavaWeb(五)——Servlet、Mapping问题、ServletContext
文章目录 1. Servlet 简介 2. HelloServlet 3. Servlet原理 4. Mapping问题 5. ServletContext 1. Servlet 简介 Servlet ...
最新文章
- lotus php,LotusPhp框架目录_PHP教程
- Android startActivityForResult的使用
- java 编码二进制写法、十六进制用源代码表示
- intellij tomcat配置
- python金融工程的工具包_金融工程及其Python应用
- python全栈开发笔记---------数据类型-----集合set
- CSS代码属性大全(HTML)
- keras_contrib安装
- fopen()函数的文件模式
- 修改 docker容器hosts文件
- win10 2016 LTSB
- 移动端H5 QQ在线客服链接代码
- java 日历选择天_如何从Java中的日历对象构建天,月,年的列表?
- 2018最佳GAN论文回顾
- azure mysql on vnet_Azure Database for MySQL (2) VNET rules
- 获取post请求的数据
- 二硫化锡/纳米碳/MXene/PANI复合材料研究进展
- Delphi7企业原版_史上最经典的delphi 版本
- 程序员是青春饭吗?30岁后的发展方向和突破
- 计算机软件统考,计算机统考_计算机与软件_考研论坛(kaoyan.com)
热门文章
- nvme固态必须uefi启动吗_加装了M.2固态无法安装WIN7系统?
- 二十一世纪大学英语读写基础教程学习笔记(原文)——5 - Shipwrecked in Antarctica(沉船南极洲)
- Ubuntu安装使用Krita
- 银河麒麟 kylin server v10上创建虚拟机(基于 鲲鹏920 CPU)
- 在用户输入手机号或者要求输入纯数字时,输入法自动切换到数字的代码
- 免费制作在线网站教程
- CJOJ 1308 【HNOI 2002 】营业额统计 / CodeVS 1296 营业额统计
- Javascript 中 atob 方法解码中文字符乱码问题
- 游戏辅助小助手框架构想
- 机器学习--详解人脸对齐算法SDM-LBF