Java Servlet

✍ dations ◷ 2025-06-29 15:59:23 #Java Servlet

Servlet(Server Applet),全称Java Servlet。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

最早支持Servlet标准的是JavaSoft的Java Web Server。此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。

一般来说,通用Servlet由javax.servlet.GenericServlet实现Servlet接口。程序设计人员可以通过使用或继承这个类来实现通用Servlet应用。

javax.servlet.http.HttpServlet实现了专门用于响应HTTP请求的Servlet,提供了响应对应HTTP标准请求的doGet()、doPost()等方法。

当servlet被部署在应用服务器中(应用服务器中用于管理Java组件的部分被抽象成为容器)以后,由容器控制servlet的生命周期。除非特殊指定,否则在容器启动的时候,servlet是不会被加载的,servlet只会在第一次请求的时候被加载和实例化。servlet一旦被加载,一般不会从容器中删除,直至应用服务器关闭或重新启动。但当容器做存储器回收动作时,servlet有可能被删除。也正是因为这个原因,第一次访问servlet所用的时间要大大多于以后访问所用的时间。

servlet在服务器的运行生命周期为,在第一次请求(或其实体被内存垃圾回收后再被访问)时被加载并执行一次初始化方法,跟着执行正式运行方法,之后会被常驻并每次被请求时直接执行正式运行方法,直到服务器关闭或被清理时执行一次销毁方法后实体销毁。

Java服务器页面(JSP)是HttpServlet的扩展。由于HttpServlet大多是用来响应HTTP请求,并返回Web页面(例如HTML、XML),所以不可避免地,在编写servlet时会涉及大量的HTML内容,这给servlet的书写效率和可读性带来很大障碍,JSP便是在这个基础上产生的。其功能是使用HTML的书写格式,在适当的地方加入Java代码片段,将程序员从复杂的HTML中解放出来,更专注于servlet本身的内容。

JSP在首次被访问的时候被应用服务器转换为servlet,在以后的运行中,容器直接调用这个servlet,而不再访问JSP页面。JSP的实质仍然是servlet。

相关

  • 圣波拉圣波拉(西班牙语:Santa Pola),是西班牙巴伦西亚自治区阿利坎特省的一个市镇。总面积59km2,总人口19782人(2001年),人口密度335人/km2。
  • 移动进动(precession)是自转物体之自转轴又绕着另一轴旋转的现象,又可称作旋进。在天文学上,又称为“岁差现象”。常见的例子为陀螺。当其自转轴的轴线不再呈铅直时,即自转轴与对称轴
  • 计算机成像计算机产生图像(英文:Computer-generated imagery,缩写:CGI),简称计算机成像,旧称计算机绘图(英文:Computer Graphics,缩写:CG),是指使用计算机产生的影像,更精确的如应用在影片中的三维特
  • 紧缩政策紧缩政策(英语:Austerity)是一套政治经济政策,旨在通过削减支出,增加税收或两者结合来减少政府预算赤字。一个国家的政府若发现难以偿还国家债务,便会考虑采用紧缩政策。这些政策
  • 新报新报可以指:
  • 乔万尼·斯甘巴蒂乔万尼·斯甘巴蒂(意大利语:Giovanni Sgambati,1841年5月28日-1914年12月14日),意大利作曲家,钢琴家,指挥家。他是意英混血儿,早年曾学习声乐和钢琴,在罗马结识了李斯特,受到其赞赏和支
  • 伊乌戈·格鲁夫伊乌戈·格鲁夫(英语:Euge Groove,1962年11月27日-),本名史蒂芬·尤金·格罗夫(Steven Eugene Grove),是位美国萨克斯风演奏家,出生于马里兰州黑格斯敦。伊乌戈·格鲁夫的母亲是位钢琴
  • 普普卡兰普普卡兰(Phuphkalan),是印度中央邦Bhind县的一个城镇。总人口10245(2001年)。该地2001年总人口10245人,其中男性5602人,女性4643人;0—6岁人口1737人,其中男948人,女789人;识字率60.69
  • 阿拉伯起义旗阿拉伯起义旗是阿拉伯起义期间由起义者使用的阿拉伯民族主义旗帜。该旗帜由英国外交官马克·赛克斯(英语:Mark Sykes)设计,用以激发阿拉伯人的民族认同感。旗帜中的三条黑、白、
  • 克拉茨埃山坐标:47°18′24″N 10°19′6″E / 47.30667°N 10.31833°E / 47.30667; 10.31833克拉茨埃山(德语:Kratzer),是中欧的山脉,位于奥地利和德国接壤的边境,属于阿尔高阿尔卑斯山脉的